船说 CMSPHP 扩展需要安装哪些

chinaz
chinaz 初级会员超兽战士
发布于 2026-10-08 09:14 ·2 浏览 ·0 回复

照这篇做完,你能把船说CMS 需要的 PHP 扩展一项不落地装齐,并且知道每一项装错了该去哪儿改。

第一步:先让安装向导告诉你缺什么,别自己猜

这一步要拿到官方的检测清单,做完你就有一张"待补清单"。把源码解压上传到网站根目录(宝塔面板 → 网站 → 你的站点 → 根目录 → 上传),浏览器访问 http://你的域名/install/index.php(部分版本直接访问 /install),进入安装向导的第一步"环境检测"。

页面上每一项后面是绿勾就是通过,红叉就是没装。把红叉项的名字一个个抄下来,这就是你要装的扩展列表。不同版本的船说CMS 要求略有差别,永远以这个页面的检测结果为准,不要照抄网上的旧教程。

注意:如果检测页直接 500 报错打不开,说明连最基础的扩展都没装够,先跳到第三步,把 mysqli、gd、mbstring 这三个装上再回来看。

第二步:用命令行核对当前环境

这一步要确认"服务器上跑的 PHP"到底装了哪些扩展,做完你能分清 CLI 和网站用的是不是同一个 PHP。SSH 登录服务器,执行:

php -v            # 看 PHP 版本
php -m            # 列出已加载的扩展

输出的是一行一个扩展名。想看得更直观,在网站根目录建一个 phpinfo.php,内容写 <?php phpinfo();,浏览器访问它,搜 "Loaded Configuration File" 找到实际生效的 php.ini 路径。

注意:php -m 走的是命令行(CLI)的 php.ini,网站走的是 PHP-FPM 的 php.ini,两者经常不是同一个文件。以 phpinfo 页面显示的为准,查完记得把 phpinfo.php 删掉。

第三步:对照清单确认必备扩展

这一步要确认核心扩展齐不齐,做完网站基本就能跑起来。绝大多数 PHP CMS(含船说CMS)的必需项:

  • mysqli / pdo_mysql —— 连数据库,缺了装不了
  • gd —— 验证码、缩略图、水印
  • mbstring —— 中文字符截取,缺了标题乱码
  • curl —— 采集、云存储、短信接口
  • openssl —— HTTPS、支付回调
  • fileinfo —— 附件上传的类型识别
  • zip —— 解压升级包
  • json、xml、simplexml —— PHP 8.0 起 json 已内置
  • exif、bcmath、sockets、iconv —— 按向导检测结果补

可选但强烈建议:redis(缓存,后台开缓存后提速明显)、opcache(性能)、imagick(比 gd 更清晰的图片处理)。

第四步:宝塔面板里怎么装(最常见场景)

这一步是把第三步列的扩展点开,做完重启 PHP 即生效。宝塔 Linux 面板 8.x 操作路径:

  1. 左侧菜单「软件商店」→ 上方切到「已安装」→ 找到「PHP-7.4」(用哪个版本就点哪个)→ 点右侧「设置」
  2. 弹窗里选「安装扩展」标签页 → 在列表里找到 redis、imagick、exif、fileinfo,点后面的「安装」,等进度条走完
  3. 再切到「配置修改」标签页,检查 extension= 开头的行有没有被注释掉(前面有 ; 就是被注释了),需要就删掉分号
  4. 切到「服务」标签页 → 点「重启」

命令行重启等价于:

systemctl restart php-fpm-74

注意:宝塔默认禁用了一批函数,如果后台报 putenv() has been disabled 之类的错,去「软件商店 → PHP-7.4 → 设置 → 禁用函数」,把 putenv、proc_open、pcntl_* 从列表里删掉再重启。

第五步:非宝塔环境(apt / yum 或源码编译)

这一步解决没有面板的服务器。Debian/Ubuntu:

apt install php7.4-mysql php7.4-gd php7.4-mbstring php7.4-curl php7.4-xml php7.4-zip php7.4-bcmath
systemctl restart php7.4-fpm

CentOS/RHEL 用 yum install php-mysqlnd php-gd php-mbstring php-curl。PECL 类扩展(redis)用 pecl install redis,然后在 php.ini 末尾加一行 extension=redis.so,重启 PHP-FPM。

第六步:装完扩展还要检查的三件事

这一步是收尾,做完站点才能正常访问。伪静态、目录权限、入口目录,缺一项都可能 404。

  • 宝塔 → 网站 → 你的站点 → 「网站设置 → 伪静态」,粘贴船说CMS 官方提供的 Nginx 规则(ThinkPHP 内核通常是 rewrite ^(.*)$ /index.php?s=$1 last;)
  • 目录权限:所有文件 644、目录 755,runtime、uploads、config 需要可写
  • 入口目录:如果是 ThinkPHP 内核,宝塔里把「网站设置 → 网站目录 → 运行目录」改成 /public

第七步:回到安装向导验证

重新访问 /install,环境检测页全部绿勾后继续安装。装完后务必删除 install 目录,否则等于把数据库配置暴露在公网。进后台「系统 → 系统信息」能看到 PHP 版本和已加载扩展,跟第二步的清单对一遍即可。

小结

  1. 扩展清单以安装向导的「环境检测」页为准,不要照抄旧教程
  2. 用 php -m 和 phpinfo 页面双重核对,注意 CLI 与 FPM 的 php.ini 不是同一个
  3. 必装:mysqli/pdo_mysql、gd、mbstring、curl、openssl、fileinfo、zip
  4. 宝塔路径:软件商店 → 已安装 → PHP 版本 → 设置 → 安装扩展 → 服务 → 重启
  5. 扩展之外还要配伪静态、目录权限、运行目录,装完删 install 目录
版权声明:本文来自 GJ站长论坛《船说 CMSPHP 扩展需要安装哪些》
原文链接:https://www.gj0.com/thread-865.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~