类别:网站源码 / 日期:2022-01-12 / 浏览:144 / 评论:0
这几天一直寻思着找一款可以用来存放网站图片的存储系统,找了国内各大OSS存储,目前国内的各类云大都有活动,都有容量赠送,但是针对外网流量等等大都有限制,
而且对于网站来说,你保不准什么时候量就过了,一觉醒来就会很懵逼的收到欠费短信,这个是我不能忍的。
于是我决定自己搭建一套,最初在网上找到的是Cloudreve,它的功能很强,大概是这个样子:
但是最重要的一点,图片水印功能没有,我搭建完成后发现自己真的需要图片水印功能啊,于是弃之,然后就找到了这款,兰空图床。
虽然是图床,但非常符合我的要求,我可以关闭用户注册,并且支持外链,支持图片上传后水印。
重要的是,它支持国内各大OSS的对接,比如阿里云,腾讯云,千牛云,更重要的是,它支持本地,和FTP,简直就是我最需要的功能,所以废话不多说,先看演示站点和功能,然后开始搭建教程:
支持第三方云储存,本地、阿里云 OSS、腾讯云 COS、七牛云、又拍云、FTP
多图上传、拖拽上传、粘贴上传、上传预览、全屏预览、页面响应式布局
简洁的图片管理功能,支持鼠标右键、单选多选、重命名等操作
全局配置用户初始剩余储存空间、设置指定用户剩余储存空间
一键复制图片外链、二维码扫描链接、图片鉴黄功能
设置上传文件、文件夹路径命名规则、文件夹分类功能
接口上传、图片软删除
OTA 在线升级系统
(Dark)暗黑主题
IP 封禁功能(支持通配符)
自定义链接参数
单用户模式
图片广场(画廊)
上传图片自动增加水印(支持图片或文字)
PHP 版本 ≥ 5.6
mysql 版本 ≥ 5.5
PDO 拓展
ZipArchive 支持
fileinfo 拓展
curl 拓展
注:如果使用 FTP 功能,需要开启 PHP 的 FTP 拓展
安装环境我这里直接用的宝塔面板,毕竟相比起linux的DOS界面,宝塔对我这种小白来说要好的太多了,第一步,新建网站:
然后远程下载源码:
解压以后记得把文件剪切到网站根目录,之后在网站的设置界面选择网站运行目录为“public”:
之后是伪静态设置,这里我用的是Nginx,配置文件如下:
具体代码为:
location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=$1 last; break; } }
如果是Apache的话,直接使用.htaccess即可。
之后直接访问网站会自动跳转到安装的检测界面:
、
需要注意的是,首次安装检测的时候大概率会提示fileInfo是个×号,这里也好解决,找到PHP的设置里,将fileInfo插件安装一下就好了:
检测完毕直接下一步就OK:
这就算完成啦,然后后台的基本设置大家一看就懂了,这里我只说一下图片上传后添加水印如何操作。
想要开启上传图片自动添加水印需要设置两个地方,第一个在config/watermark.php文件内:
* 水印配置文件(是否启用受环境变量中的 watermark 配置限制)
*
* 每个储存策略都可以设置独立的水印配置,分为文字水印和图片水印两种类型。
*
* 文字水印配置说明:
* `enable`: 是否启用水印功能
* `type`: 类型[1=文字水印,2=图片水印]
* `text`: 水印文字
* `font`: 字体文件绝对路径
* `size`: 文件大小
* `color`: 颜色
* `locate`: 水印位置[1=左上角,2=上居中,3=右上角,4=左居中,5=居中,6=右居中,7=左下角,8=下居中,9=右下角]
* `offset`: 文字相对当前位置的偏移量,默认0
* `angle`: 文字倾斜角度,默认0
*
* 图片水印配置说明
* `enable`: 是否启用水印功能
* `type`: 类型[1=文字水印,2=图片水印]
* `source`: 水印图片文件绝对路径
* `locate`: 水印位置[1=左上角,2=上居中,3=右上角,4=左居中,5=居中,6=右居中,7=左下角,8=下居中,9=右下角]
* `alpha`: 透明度
*
* FAQ:
* 1.字体、水印图片如何配置?
* 路径下载你的字体文件或水印图片放置到项目任意目录, 变量 $root 则是项目根目录,即 public 上层目录
* 假如现在有个 test.ttf 字体文件,将它放置到 public 目录下,那么路径则是 $root . 'public/test.ttf'
* 2.文字偏移量(offset)和倾斜角度(angle)支持负数
* 3.每个策略的水印配置,只能同时存在一种类型,不可以同时配置文字水印和图片水印
* 4.启用水印功能后,系统不会保存原图!
这是文件内的配置说明,因为我用的是本地存储,所以我这里就说本地的方法,而其它OSS的启用方法其实是一样的:
// 本地 'local' => [ 'enable' => true, 'type' => 2, 'source' => $root . 'public/Watermark.png', 'locate' => 5, 'alpha' => 90,
如果你不懂,就直接复制上面的代码到你的watermark.php内替换本地,同时将你的水印图片放在网站根目录下的public文件夹内即可,
然后你还需要在另外一个文件内启用图片添加水印功能,该文件在网站跟目录,叫.env,你可以直接在宝塔里点击编辑,然后看下面:
在[system]下添加 system.watermark = true 即可,截图中的“system.single_user_mode”是我启用了单站点模式,意思图床不允许用户注册,只是我个人使用。
最后附上开发者的github下载地址。
发表评论 / 取消回复