EasyImage支持多文件上传,简单无数据库,开箱即食,可以返回url,markdown,bbscode,html等链接形式。这个图床的最初版本于2018年7月发布,如果4年过去了,作者还在更新,这真的是很不容易的事情。由于之前的版本过老并且使用falsh上传,在当前html5流行大势所趋下,作者重新新写了一个以html5为默认上传并且支持flash,向下兼容至IE9。
1、简介
项目:https://github.com/icret/EasyImages2.0
演示:https://png.cm/
2、准备
以下是本教程准备的搭建环境:
VPS一台+宝塔面板
PHP7.4(PHP >= 5.6,安装好Fileinfo扩展)
nginx1.21
域名准备一个
3、部署
1)新建一个网站,宝塔如何建站略过
2)下载程序,如果是宝塔面板用户可以用宝塔自带的远程下载来实现。之后解压,复制到网站的根目录,并删除.user.ini,直接删除即可。
3)浏览器输入域名访问,会跳出EasyIamge 2.0 安装环境检测,如图:
4)下一步后,输入你的域名,管理员账号等,如图:
5)安装完成,之后可以用用户名和密码访问后台。进入后台后,可以自行修改一些tdk等。
6)第一次访问前台会有一个环境检测提醒如图,这个自己按照说明来做。
4、简单使用
以上就算是把图床搭建成功了,现在来简单提现一番,简单看个图吧。
5、最后
1)程序升级
- 备份
config
(没有增加上传用户和api可以只保留config.php
文件)目录和上传目录
- 将新程序下载至网站目录解压覆盖,然后将备份的文件替换既完成升级
2)安全配置
- Apache环境在上传目录添加配置文件
.htaccess
使上传目录不可运行PHP程序(默认已经存在)
<FilesMatch "\.(?i:php|php3|php4|php5)">
Order allow,deny
Deny from all
</FilesMatch>
- Nginx环境禁止多个目录运行
PHP
程序:
# "i|public"是你要禁止的目录 放到listen段落之后才生效
location ~* ^/(i|public)/.*\.(php|php5)$
{
deny all;
}
- Lighthttpd环境禁止多个目录运行
PHP
程序:
$HTTP["url"] =~ "^/(i|public)/" {
fastcgi.server = ()
}
3)使用注意
- 请将所有文件赋予
0755
和www
权限 - 对
PHP
不太熟悉的请不要将图床程序放置于二级目录 - 请关闭防跨站或删除域名文件夹内的
user.ini
文件 如宝塔面板 - 网站域名与图片域名必须填写,如果只有一个域名请填写成一样的
- 第一次使用会执行安装程序并生成
install.lock
不执行安装可以删除install
目录 - 第一次访问会检查环境并在
config
目录下生成EasyImage.lock
- 可以使用谷歌浏览器的调试模式查看错误
F12->console
- 出现
undefined function imagecreatefromwebp()
是因为GD没安装webp - 出现
upload File size exceeds the maximum value
调整PHP
上传大小 - 出现
Warning: is_dir(): open_basedir restriction in effect
解决方法同3
- 出现
Fatal error: Allowed memory size......
主机内存或分配给PHP的内存不够 解决方法百度 - 不出验证码: 权限问题见问题1 CDN缓存了/开防火墙了
- 2022-07-10 v2.6.6更新
- 增加图片信息显示随机图片
- 增加文件雪花命名
- 增加举报入口
- 更新组件