赞片CMSGD库
学完这篇,你能在赞片CMS所在服务器上正确安装或开启 PHP GD 库,让海报缩略图、验证码、水印不再报错。
第一步:确认赞片CMS是不是缺GD库
这一步要确认报错来源,得到明确结论——是GD没装,还是没启用。
登录赞片CMS后台,点“系统” -> “系统设置” -> “图片设置”,尝试上传一张JPG海报并勾选“生成缩略图”。如果页面出现 Call to undefined function imagecreatefromjpeg() 或 GD library extension not available,就是缺GD。也可以用命令行:php -m | grep -i gd,没有输出就是没装。或者在网站根目录新建 phpinfo.php,内容写 <?php phpinfo(); ?>,浏览器访问 你的域名/phpinfo.php,搜索 GD Support,显示 enabled 才算正常。
注意:测试完删掉 phpinfo.php,避免泄露服务器信息。
第二步:根据环境安装GD库(以宝塔面板为例)
这一步要给PHP安装GD扩展,做完后PHP会多出GD模块。
以宝塔面板 7.9.0、PHP 7.4 为例:
- 登录宝塔面板,左侧点“软件商店”。
- 在“已安装”列表找到
PHP-7.4,点右侧“设置”。 - 弹窗中选“安装扩展”。
- 找到
gd,点“安装”。等待进度条走完。
如果是命令行环境:
- Ubuntu/Debian:
sudo apt install php7.4-gd -y - CentOS 7/8:
sudo yum install php-gd -y - 编译安装的PHP:进入PHP源码目录
ext/gd,执行phpize && ./configure --with-php-config=/www/server/php/74/bin/php-config && make && make install,然后在 php.ini 加extension=gd.so。
注意:赞片CMS推荐 PHP 7.2-7.4,GD 版本最好 2.3.0 以上,不要用 PHP 8.2+ 配老版本赞片,容易出现兼容问题。
第三步:重启PHP并验证
这一步要让扩展生效,并确认赞片CMS能调用GD。
宝塔面板:软件商店 -> PHP-7.4 -> 设置 -> 服务 -> 重启。命令行:sudo systemctl restart php7.4-fpm 或 sudo systemctl restart php-fpm。
验证命令:php -r "var_dump(function_exists('imagecreatefromjpeg'));",输出 bool(true) 即成功。再访问 phpinfo.php,搜索 GD Support,看到 enabled,下面 JPEG Support、PNG Support 也是 enabled。
注意:只装GD不重启,PHP不会加载新扩展,赞片CMS仍会报错。
第四步:回到赞片CMS设置图片参数
这一步要让赞片CMS实际用上GD,生成缩略图和水印。
登录赞片CMS后台,地址通常是 http://你的域名/admin.php。进入“系统” -> “系统设置” -> “图片设置”(部分版本叫“附件设置”)。开启“生成缩略图”,缩略图宽度填 300,高度填 400;开启“图片水印”,上传 watermark.png,位置选“右下角”,透明度填 60。保存后,再到“视频” -> “添加视频”,上传一张JPG海报,观察是否自动生成 _thumb 结尾的缩略图。
注意:如果上传后仍不生成缩略图,检查赞片CMS根目录
data/和uploads/是否可写,权限建议755,所属用户为www。
第五步:常见报错处理
这一步要解决装完GD后仍报错的几种情况。
- 报
Call to undefined function imagecreatefromwebp():说明GD没编译 WebP 支持。宝塔面板重新安装 gd 扩展,勾选webp;命令行编译时加--with-webp。 - 报
GD library extension not available:确认赞片CMS用的PHP版本和你装GD的版本一致。在宝塔面板“网站” -> 你的站点 -> 设置 -> PHP版本,看选的是不是PHP-7.4。 - 验证码不显示:检查
php.ini中extension=gd是否被注释,去掉前面的;。
注意:不要同时给多个PHP版本装GD后混用,赞片CMS只会调用站点绑定的那个PHP版本。
小结
- 先用
php -m | grep -i gd或 phpinfo 确认是否缺GD。 - 宝塔面板:软件商店 -> PHP-7.4 -> 设置 -> 安装扩展 -> gd。
- 命令行:
apt install php7.4-gd或yum install php-gd。 - 装完必须重启 PHP-FPM。
- 赞片CMS后台“系统 -> 系统设置 -> 图片设置”里开启缩略图和水印。
- 权限和PHP版本一致是常见坑。
原文链接:https://www.gj0.com/thread-330.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。