探索建站和运维乐趣

利用ImgURL程序自建网站图床存储 可绑定外部存储

我们很多站长之前较多的会使用新浪图床存储自己的网站图片,然后写文章的时候直接引用,从前一段时间开始我们看到新浪图床开始禁止外链接引用之后大家纷纷转向将图片存储到本地服务器,或者是开始想办法自建图床、图片存储。如果我们网站图片比较少,放到与网站本地一起都没有多大关系,如果我们网站图片很多,有些网友有几个G大小的图片。

最优的办法是将图片与网站分离,包括我们有些网友项目是单独的图片营销的,肯定是希望有单独、可控的图床,于是有些网友开始使用腾讯云COS、阿里云OSS、七牛云对象存储等,但是这些平台域名需要备案,而且图片是需要经过过滤审核的,当然是按照流量计费的。于是我们很多网友又在担心流量被扣费不可控,就想着自己利用服务器、虚拟主机自建图床。

在这篇文章中,笔者推荐知名博主XIAOZ同学开发的ImgURL程序,是基于PHP语言、SQLite3开发的图床程序,我们可以自用也可以开源给网友一并使用。搭建完毕图床之后,就可以直接类似新浪图床一样存储图片和其他附件,然后再引导到我们的网站或者其他推广项目。

第一、ImgURL社区版与专业版

目前,ImgURL程序有推出社区版(免费版)以及专业版(付费版),两者之间还是有少许的区别的,比如前者搭建程序之后不可以去除版权,如果我们对于版权比较介意的可以购买付费版本。同时,专业版可以利用第三方存储管理文件,而免费版只能在本地存储。

我们一起看看区别:

功能 专业版 社区版
外部存储 本地、B2、腾讯COS、FTP 仅本地
广告
自定义版权 支持 不支持
数据库 MySQL SQLite3
上传方式 选择、多图、拽拖、粘贴、URL上传 选择、多图、拽拖、粘贴、URL上传
API支持
更新周期 长期 不定期
技术支持
授权方式 单域名授权 无需授权
购买地址 http://shop.imgurl.org/ 免费下载

如果我们准备长期使用这款自建图床的话可以购买专业版,使用【20OFF】优惠码可以六折优惠,折扣后大约118元授权单个域名,使用自建图床比较安心不用担心数据丢失,都是可控的。

第二、ImgURL自建图床安装向导

1、环境要求

ImgURL程序需要支持PHP >= 5.6、PDO_SQLite、GD2、ImageMagick、fileinfo、pathinfo,但是我们如果使用的服务器配置的WEB,有些并不是直接兼容的。

ImgURL自建图床安装向导

通过安装向导检测到,如果未通过的就无法下一步,我们需要解决是否兼容和支持的组件。

2、伪静态支持

默认WEB系统一般不会自带IMGURL程序的伪静态,我们需要单独设置伪静态。

A - Apache

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L]

B - Nginx

location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~* \.(db3|json)$ {
deny all;
}
location ~* ^/(temp|upload|imgs|data|application|static|system)/.*.(php|php5)$ {
return 403;
}

C、IIS

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Rule" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
<add input="{URL}" pattern="^/favicon.ico$" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

一般我们安装在Nginx或者Apache居多,个人不建议安装在IIS上,因为PHP兼容在WIN服务器不好。

3、PRO专业付费版本配置

付费版本配置与免费版本稍微不同,是需要配置授权KEY文件的。

A、将站点目录下的config.simple.php复制一份命名为config.php

B、将邮件里面的key填写到config.php里面的$config['key'] 这一项

PRO专业付费版本配置

然后我们需要,确保服务器已经安装了MySQL数据库(需要大于等于5.6)并新建一个空的数据库,然后将data/imgurl_simple.sql 导入到新建的数据库中,将站点根目录的db.config.simple.php复制一份命名为db.config.php,在db.config.php填写正确的数据库名称、用户名、密码。

第三、ImgURL自建图床应用

我们在配置完毕之后就可以很轻松的使用图床。

我们看到ImgURL程序在安装之后界面还是比较清爽的。

测试地址:http://test.imgurl.org/user/login
账号:xiaoz
密码:xiaoz.me

以上是测试图床。

进入后台可以对图片进行管理。付费专业版是可以设置自定义版权绑定域名的。

IMGURL设置版权

如果我们图床是公开使用的那就不要限制游客。个人建议自建图床就自己使用,这样可以控制图片的管理,以及图片合法性。如果我们希望图片和附件不是用本地服务器管理,而是用到第三方存储,那必须是专业付费版本才支持的。

IMGURL绑定第三方存储

同时,我们也可以设置图片压缩,以及后续应该是会有图片自动水印功能。

总结,ImgURL自建图床程序目前功能还是比较简单实用的,可以解决我们网站、项目图片的自有控制管理,不用担心存储在第三方丢失或者不允许外链接使用问题。

赞(1)
转载保留:老部落 » 利用ImgURL程序自建网站图床存储 可绑定外部存储


关注公众号『老蒋朋友圈』

获取更多建站运营运维新知!
互联网创业、前沿技术......