小皮面板PHP扩展要怎么安装
学完这篇,你就能在自己的小皮面板上把 Redis、GD、Redis、fileinfo 这类 PHP 扩展真正装进 PHP 并让它生效,不管用的是 Windows 版还是 Linux 版面板。
第一步:先搞清楚你用的是哪个版本
小皮面板现在有两个完全不同的产品,安装扩展的方法也完全不同,先确认版本再动手:
- Windows 版:叫 phpstudy_pro,界面左上角菜单有「首页 / 软件管理 / 网站 / 数据库 / 文件 / 设置」。
- Linux 版:叫小皮面板(官网 xp.cn),界面左侧是「首页 / 网站 / 数据库 / 文件 / 监控 / 计划任务」这种布局,PHP 装在
/www/server/php/下。
两者的 PHP 目录、配置文件位置、安装方式都不一样。下面分开讲。
第二步:Windows 版直接勾选(最简单)
这一步要做的就是在图形界面里把扩展打开,做完后 PHP 扩展立即加载。
- 打开 phpstudy_pro,点左侧「软件管理」。
- 在上方筛选栏选「PHP」,你会看到本机已下载的 PHP 版本列表,比如 PHP 7.4.3nts、PHP 8.1.1nts。
- 找到你网站正在用的那个版本,点它右侧的「设置」按钮,弹出窗口里选「PHP扩展」标签页。
- 列表里勾选你要的扩展,比如
redis、gd、curl、fileinfo、exif。 - 点「确定」,然后回到软件管理列表,点这个 PHP 版本右侧的「重启」(有的版本显示为「停止」再「启动」)。
完成标志:重启后「PHP扩展」标签页里该扩展前面是勾选状态,且状态栏显示「运行中」。
注意:Windows 下扩展名要和 PHP 的线程模型匹配,面板里带
nts的版本只能装php_redis.dll(非线程安全版),装成 ts 版会启动失败并报 “Unable to load dynamic library”。
第三步:Linux 版用 pecl 或手动编译
Linux 版面板没有「勾选即装」的扩展列表,只能用命令装。这一步做完会得到扩展的 .so 文件并写入 php.ini。
方式一:用自带 pecl 装(适合 redis、imagick 等常见扩展)
ls /www/server/php/
# 安装 redis 扩展
/www/server/php/82/bin/pecl install redis
装完后编辑 PHP 配置文件:
vim /www/server/php/82/etc/php.ini
在文件末尾加一行:
extension=redis.so
方式二:pecl 用不了时手动编译
cd /www/server/php/82/src/ext/redis
/www/server/php/82/bin/phpize
./configure --with-php-config=/www/server/php/82/bin/php-config
make && make install
编译成功后同样在 php.ini 加 extension=redis.so。
最后重启 PHP:
/etc/init.d/php-fpm-82 restart
# 或者在面板「软件商店 / PHP 管理」里点重启
注意:
/www/server/php/82/src/目录不一定存在,有些新装的面板不带源码包。这时要先去 php.net 下载对应版本的源码,解压后用ext/里的扩展目录编译,PHP 大版本必须和运行版本一致,否则会报 “API mismatch”。
第四步:验证扩展到底有没有生效
这一步确认结果,避免白装。
命令行验证:
/www/server/php/82/bin/php -m | grep redis
输出了 redis 就成功了。
网页验证:在网站根目录建一个 info.php,内容写 <?php phpinfo();,浏览器访问 http://你的域名/info.php,Ctrl+F 搜扩展名。
注意:验证完请删掉 info.php,否则会暴露服务器环境信息。
如果 php -m 有、网页没有,说明网站用的是另一个 PHP 版本,去面板「网站」列表里看该站点的 PHP 版本设置。
小结
- Windows 版走「软件管理 → PHP → 设置 → PHP扩展 → 勾选 → 重启」。
- Linux 版用
pecl install 扩展名或在源码ext/目录里phpize + configure + make install。 - 装完必须在对应版本的
php.ini里写extension=xxx.so,只编译不加配置等于没装。 - 重启的必须是「同一个 PHP 版本」的进程,版本对不上是扩展不生效最常见的原因。
- 用
php -m和phpinfo()双重验证。
原文链接:https://www.gj0.com/thread-331.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。