现在越来越多的网站的图片都有一个专门的服务器来托管图片-图床。作为一个爱折腾的人,我也打算搞一个自己的图床网站,以后所有的图片都放这上面了,这样一来节省了不少流量和空间,还可以用这个网站发布一些高清的图片。
那么问题来了,目前网上好像没有可以连接阿里云OSS的图床,那么应该怎么做呢?我在查找资料的时候知道了阿里云还有个ossfs的东西,通过这个软件就可以把你的OSS盘挂载到你主机的目录上。注意:该方法不适合那种高并发的需要进行大量IO读写的操作。
不过对于图床来说,只是需要存储文件而已,所以并不需要这么高的性能,所以这个是完全可以的。
[successbox title="通知"]这个文章是很久以前写的,现在已经更新,同时也添加了视频教程,看不懂文章教程的可以看视频教程。
[bilibili cid="108094523" page="1"]62186105[/bilibili]
[/successbox]
1.安装图床
这里我使用的是Chevereto
注意:它这个是有收费的和免费版本的,不过我们用免费版就已经够用了,推荐使用正版的免费版本,不要去下什么破解版的,不安全。
大家可以到官方的github上下载源码。
官方给出了四种安装方式
这里我讲最后一个
首先我们需要先下载压缩包,然后通过宝塔上传到自己网站的根目录(这个是所有网站的根目录)
这里看图应该看的明白吧。
然后我们需要把我们网站的目录改到这里,这里我们需要新建一个网站(不要和博客或者其他的东西公用一个域名否则无法安装,这里推荐大家去创建一个二级域名)
记得更改一下权限(不改权限的话,图床可能无法访问)
我们新建一个网站,然后把目录指定一下
创建后我们需要修改一下网站的伪静态
大家自己把下面的内容拷贝到里面
# Image not found replacement
location ~* (jpe?g|png|gif) {
log_not_found off;
error_page 404 /content/images/system/default/404.gif;
}
# CORS header (avoids font rendering issues)
location ~ .(ttf|ttc|otf|eot|woff|woff2|font.css|css|js)$ {
add_header Access-Control-Allow-Origin "*";
}
# Pretty URLs
location / {
try_files $uri $uri/ /index.php?$query_string;
}
然后直接访问域名就可以看到下面的界面了
这里大家把数据库用户名还有密码填上去就行了
然后就是下面这个界面
这里大家这些邮箱地址全部填自己的邮箱就可以了。
然后就安装完毕。。。
然后登陆进去会有英文界面,大家按照我这样在后面输入settings就可以把全局设置为中文了。
下面说一下第一种方法
我们自己先新建一个网站,然后我我们下载的installer.php文件放到根目录。
然后同样是把伪静态加进去
然后安装下面这个网址输一下就可以进入自动安装界面了
我们点击继续。
下面那个输入license的大家可以跳过,然后下面就是cPanel access,这个我们也跳过.
下面是设置数据库用户名和密码大家输入就好。
这里和上面都差不多,所以就懒得截图了
2.挂载ossfs
然后需要下载安装包,你的是什么系统就安装什么样的安装包。下好后上传到你的服务器上面,然后在终端界面定位到你的安装包的安装路径。
因为那个安装包下载链接里面有详细的教程,这里就直接介绍我的centos7.0的安装方法。其余的自己到那个教程里去找
安装方法:
sudo yum localinstall your_ossfs_package
安装好后就可以设置bucket name 和 AccessKeyId/Secret信息,将其存放在/etc/passwd-ossfs 文件中。注意这个文件的权限必须正确设置,建议设为640。
echo 你的bucket名字:你的keyid:你的keysecret > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
然后把你的OSS挂载到指定目录(注意:你要把它挂载在图床网站的目录下,原因后面会说)
ossfs 你的bucket名字 挂载目录 -ourl=你的阿里云的访问网址
比如:将my-bucket
这个bucket挂载到/tmp/ossfs
目录下,AccessKeyId是faint
,AccessKeySecret是123
,OSS endpoint是http://oss-cn-hangzhou.aliyuncs.com
echo my-bucket:faint:123 > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
mkdir /tmp/ossfs
ossfs my-bucket /tmp/ossfs -ourl=http://oss-cn-hangzhou.aliyuncs.com
安装好后如果需要卸载可以输入以下命令
fusermount -u /tmp/ossfs
[dangerbox title="注意"]
当然,如果我们直接这样设置的话,你的图床是无法直接访问自己挂载的目录的(默认是只有root用户才能修改)我们需要修改访问权限:
在你挂载的时候在命令行后面加上 -o allow_other
[/dangerbox]
这里挂载在你安装的图床路径下的image文件夹就可以了,这个是存储图片的文件。