WHMCS 7.5 终于发布了,这货开始支持 PHP 7.2,这里就写个简单的教程记录一下安装方式
1、准备工作
首先,按照《Debian 9 / Debian 8 使用源安装 LEMP 教程》安装好 LEMP 环境,可以选一些需要用到的 PHP 7.2 软件包
1 |
apt-get install php7.2-fpm php7.2-mysql php7.2-curl php7.2-gd php7.2-mbstring php7.2-xml php7.2-xmlrpc php7.2-zip php7.2-json php7.2-imap php7.2-opcache -y |
2、安装 ionCube Loader 10
WHMCS 7.5 开始不支持老版本 ionCube Loader,所以我们需要从官网上下载最新的版本并进入解压后的
1 |
ioncube |
目录
1 2 3 |
wget http://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.zip unzip ioncube_loaders_lin_x86-64.zip cd ioncube |
按照默认编译 PHP 7.2 的
1 |
PHP Extension |
我们可以找到 PHP 7.2 扩展的目录在
1 |
/usr/lib/php/20170718/ |
对应的话,PHP 7.0 在
1 |
/usr/lib/php/20151012/ |
,PHP 7.1 在
1 |
/usr/lib/php/20160303/ |
然后把
1 |
ioncube |
目录里的
1 |
ioncube_loader_lin_7.2.so |
给复制过去
1 |
cp -r ioncube_loader_lin_7.2.so /usr/lib/php/20170718/ |
对应 PHP 7.1 就是
1 |
cp -r ioncube_loader_lin_7.1.so /usr/lib/php/20160303/ |
对应 PHP 7.0 就是
1 |
cp -r ioncube_loader_lin_7.0.so /usr/lib/php/20151012/ |
然后增加一个 FPM 的模块配置文件
1 2 3 |
cat >> /etc/php/7.2/mods-available/ioncube.ini << EOF zend_extension = ioncube_loader_lin_7.2.so EOF |
然后给
1 |
PHP-FPM |
和
1 |
PHP-Cli |
都增加 ioncube 模块
1 2 |
ln -s /etc/php/7.2/mods-available/ioncube.ini /etc/php/7.2/fpm/conf.d/01-ioncube.ini ln -s /etc/php/7.2/mods-available/ioncube.ini /etc/php/7.2/cli/conf.d/01-ioncube.ini |
然后重启
1 |
PHP-FPM |
1 |
systemctl restart php7.2-fpm |
我们来检查一下是否生效
1 2 3 4 5 6 |
root@debian ~ # php -v PHP 7.2.3-1+0~20180306120016.19+stretch~1.gbp81bf3b (cli) (built: Mar 6 2018 12:00:19) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.2.0, Copyright (c) 2002-2018, by ionCube Ltd. with Zend OPcache v7.2.3-1+0~20180306120016.19+stretch~1.gbp81bf3b, Copyright (c) 1999-2018, by Zend Technologies |
看到
1 |
with the ionCube PHP Loader (enabled) |
即可
PS:对应的 PHP 7.1 和 PHP 7.0 用户请自行修改目录,不再重复
3、修改 MySQL 配置
按照官方说明,WHMCS 7 开始不支持 SQL strict 模式
WHMCS requires MySQL strict mode to be turned off in order for it to function.
所以我们需要关闭 Percona Server 里默认开启的 SQL strict 模式
直接修改
1 |
/etc/mysql/percona-server.conf.d/mysqld.cnf |
文件,把
1 |
sql_mode |
改成
1 |
sql_mode=NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
即可
最后这文件看上去就像这样子
然后重启 MySQL
1 |
systemctl restart mysql |
最后配置 Nginx 和安装 WHMCS 就不再多重复了