船说 CMSPHP 扩展需要安装哪些
照这篇做完,你能把船说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 操作路径:
- 左侧菜单「软件商店」→ 上方切到「已安装」→ 找到「PHP-7.4」(用哪个版本就点哪个)→ 点右侧「设置」
- 弹窗里选「安装扩展」标签页 → 在列表里找到
redis、imagick、exif、fileinfo,点后面的「安装」,等进度条走完 - 再切到「配置修改」标签页,检查
extension=开头的行有没有被注释掉(前面有;就是被注释了),需要就删掉分号 - 切到「服务」标签页 → 点「重启」
命令行重启等价于:
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 版本和已加载扩展,跟第二步的清单对一遍即可。
小结
- 扩展清单以安装向导的「环境检测」页为准,不要照抄旧教程
- 用
php -m和 phpinfo 页面双重核对,注意 CLI 与 FPM 的 php.ini 不是同一个 - 必装:mysqli/pdo_mysql、gd、mbstring、curl、openssl、fileinfo、zip
- 宝塔路径:软件商店 → 已安装 → PHP 版本 → 设置 → 安装扩展 → 服务 → 重启
- 扩展之外还要配伪静态、目录权限、运行目录,装完删 install 目录
原文链接:https://www.gj0.com/thread-865.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。