类别:网站源码 / 日期:2022-01-12 / 浏览:144 / 评论:0

这几天一直寻思着找一款可以用来存放网站图片的存储系统,找了国内各大OSS存储,目前国内的各类云大都有活动,都有容量赠送,但是针对外网流量等等大都有限制,

而且对于网站来说,你保不准什么时候量就过了,一觉醒来就会很懵逼的收到欠费短信,这个是我不能忍的。

于是我决定自己搭建一套,最初在网上找到的是Cloudreve,它的功能很强,大概是这个样子:

13.jpg

但是最重要的一点,图片水印功能没有,我搭建完成后发现自己真的需要图片水印功能啊,于是弃之,然后就找到了这款,兰空图床。

虽然是图床,但非常符合我的要求,我可以关闭用户注册,并且支持外链,支持图片上传后水印。

重要的是,它支持国内各大OSS的对接,比如阿里云,腾讯云,千牛云,更重要的是,它支持本地,和FTP,简直就是我最需要的功能,所以废话不多说,先看演示站点和功能,然后开始搭建教程:


支持第三方云储存,本地、阿里云 OSS、腾讯云 COS、七牛云、又拍云、FTP

 多图上传、拖拽上传、粘贴上传、上传预览、全屏预览、页面响应式布局

 简洁的图片管理功能,支持鼠标右键、单选多选、重命名等操作

 全局配置用户初始剩余储存空间、设置指定用户剩余储存空间

 一键复制图片外链、二维码扫描链接、图片鉴黄功能

 设置上传文件、文件夹路径命名规则、文件夹分类功能

 接口上传、图片软删除

 OTA 在线升级系统

 (Dark)暗黑主题

 IP 封禁功能(支持通配符)

 自定义链接参数

 单用户模式

 图片广场(画廊)

 上传图片自动增加水印(支持图片或文字)


PHP 版本 ≥ 5.6

mysql 版本 ≥ 5.5

PDO 拓展

ZipArchive 支持

fileinfo 拓展

curl 拓展

注:如果使用 FTP 功能,需要开启 PHP 的 FTP 拓展


安装环境我这里直接用的宝塔面板,毕竟相比起linux的DOS界面,宝塔对我这种小白来说要好的太多了,第一步,新建网站:

1.jpg

然后远程下载源码:

6.jpg

解压以后记得把文件剪切到网站根目录,之后在网站的设置界面选择网站运行目录为“public”:

7.jpg

之后是伪静态设置,这里我用的是Nginx,配置文件如下:

8.jpg

具体代码为:

location / {
    if (!-e $request_filename) {
    	rewrite ^(.*)$ /index.php?s=$1 last; break;
    }
}

如果是Apache的话,直接使用.htaccess即可。

之后直接访问网站会自动跳转到安装的检测界面:

9.jpg

需要注意的是,首次安装检测的时候大概率会提示fileInfo是个×号,这里也好解决,找到PHP的设置里,将fileInfo插件安装一下就好了:

10.jpg

检测完毕直接下一步就OK:

12.jpg

这就算完成啦,然后后台的基本设置大家一看就懂了,这里我只说一下图片上传后添加水印如何操作。

想要开启上传图片自动添加水印需要设置两个地方,第一个在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,你可以直接在宝塔里点击编辑,然后看下面:

111.jpg

在[system]下添加    system.watermark = true 即可,截图中的“system.single_user_mode”是我启用了单站点模式,意思图床不允许用户注册,只是我个人使用。

最后附上开发者的github下载地址。





兰空图床 来源:github
版权声明 : 本文为原创文章,禁止私自转载,本站保留申诉的权利。

 可能感兴趣的文章

评论区

发表评论 / 取消回复

必填

选填

选填

◎欢迎讨论,请在这里发表您的看法及观点。