搭建个人图片管理工具
搭建个人图床管理工具
前言
之前因为服务器到期了博客暂停了好久,近期购买了服务器,也折腾了NAS,然后又看到阿里云200mbps峰值带宽的服务器,立马下单。把我的博客恢复起来了网站是blog.aohyi.cn,并且重新好好装扮了一下blog总体采用了简约的风格。这个时候又遇到了新的问题需要解决。就是图片问题,我主要是用来解决下面这几个问题。1、这个时候发现我的每次在协文章的时候每次遇到要插入图片的时候,我都是用文字描述。避免插入图片。2、我的博客的缩略图blog的缩略图都是随便整了几个,想拓展又要到处去找别人的图很不方便。3、外面找的图片隔一段时间就失效了。
我想算了索性我自己搭建一个好了。这就开始了我这段新的折腾之旅。
一、选方案确定思路
因为搭建自己的图片网站,需要具备以下几个方面的功能。
1、需要界面简洁。
2、能够随时登录地址进行图片浏览。
3、可以在线上传下载删除图片。
4、可以使用我存在nas的图片。可以通过一些webdev、FTP之类协议链接过去。
基于上面这些需求我到处找解决方案,发现一个开源的图床准备试一试。
开源地址放这里兰空图床
这个又详细的文档,也有相关案例看了能满足我的需求,需要准备开整试一试。希望能满足我的需求。
我用的服务器是ubuntu22.04,服务器上已经安装nginx、mariadb、PHP
二、找到官方文档开整
兰空图床开源版V2.0文档
直接快速入门-安装
1、找个目录放项目
我习惯放在opt里面。依次运行下面的命令
1 | cd /opt |
获取安装包
https://github.com/lsky-org/lsky-pro/releases](https://github.com/lsky-org/lsky-pro/releases
下载最新的安装包,并上传到/opt/lsky-pro然后解压
1 | unzip lsky-pro-2.1.zip |
然后强迫症删掉安装包
1 | rm -rf ./lsky-pro-2.1.zip |
2、安装环境
然后是安装nginx我服务器上已经安装过来所以不用安装了。
然后安装PHP拓展,不知道为什么PHP要求页面是空白的,我也不知道要安装那些PHP拓展后面再readme里面找到了。
如下:
- PHP >= 8.0.2
- BCMath PHP 扩展
- Ctype PHP 扩展
- DOM PHP 拓展
- Fileinfo PHP 扩展
- JSON PHP 扩展
- Mbstring PHP 扩展
- OpenSSL PHP 扩展
- PDO PHP 扩展
- Tokenizer PHP 扩展
- XML PHP 扩展
- Imagick 拓展
- exec、shell_exec 函数
- readlink、symlink 函数
- putenv、getenv 函数
- chmod、chown、fileperms 函数
安装拓展老报错。先安装个PHP最新版。往下走走看,不行在回头来啃拓展安装。
3、配置nginx
这里应该是配置到public下的index.php来进行安装。
1 | vim /etc/nginx/sites-available/lsky-pro.conf |
填入
1 | server { |
启用配置
1 | sudo ln -s /etc/nginx/sites-available/lsky-pro.conf /etc/nginx/sites-enabled |
检查配置是否正确
1 | nginx -t |
显示successful表示没有问题
重启nginx
1 | sudo systemctl restart nginx |
域名配置后解析
我是配置到images.aohyi.cn,配置后好打开域名。
哦。不行出错了。网页下载了一个名为“下载”的文件。不对。应该是哪里出错了。
重新再来。另外找了个教程。
三、另外找到教程开整
教程地址
之前找到b站视频,和官方文档。我个渣渣搞了半天没搞出来。还是另外找大神教程在弄弄。
1、安装php跟php扩展
安装php
1 | apt install php-fpm |
安装php扩展
1 | apt install php-bcmath php-dom php-json php-mbstring php-tokenizer php-xml php-imagick |
php-dom安装失败,AI告诉我运行下面这个命令指定具体版本需要先安装xml
1 | sudo apt install php8.3-xml |
安装完成后,可以通过以下命令验证 DOM 扩展是否已正确加载:
1 | php -m | grep dom |
如果输出包含 dom,则表示 DOM 扩展已成功安装并加载。
接下来安装openssl
1 | apt install libssl-dev openssl |
2、配置php.ini
下一步,我们要对PHP进行配置。
1 | ``` |
注意路径中的8.1改成您安装的对应版本号
在php.ini中,找到disable_functions,
1 | 若 “=” 右侧存在exec、shell_exec、readlink、symlink、putenv、getenv函数,将其删除(默认状态下,等号右侧为空白); |
执行以下命令重启PHP-FPM:
1 | systemctl restart php8.3-fpm |
3、拉去安装包解压,并给文件夹赋值权限
这个在对官方文档的时候我弄过了。这里补充下权限
1 | chmod -R 755 /opt/lsky-pro |
4、配置nginx
前面的配置不对重新配一下
1 | vim /etc/nginx/sites-available/lsky-pro.conf |
填入
1 | server { |
启用配置
1 | sudo ln -s /etc/nginx/sites-available/lsky-pro.conf /etc/nginx/sites-enabled |
检查配置是否正确
1 | nginx -t |
显示successful表示没有问题
重启nginx
1 | sudo systemctl restart nginx |
域名配置后解析
我是配置到images.aohyi.cn,配置后好打开域名。
还是不行!!!!试了很多办法
打开域名会下载public下的index.php
我查了下可能是之前弄wordpress的时候弄得php版本太多了。
这就是一个服务弄多个应用的确定。不好维护。
所以我最后删除所有php。
最后发现是浏览器的原因,我常用edge浏览器,这个浏览器打开页面变成下载页面,我用谷歌浏览器就正常。
我都要奔溃了。最后发现是这么一个原因。
我原来一直说用edge跟谷歌没什么区别。因为edge也是用谷歌浏览器内核改的。我现在收回这句话。能用谷歌浏览器就用谷歌浏览器吧。




