阿里云轻量型应用服务器为WordPress升级PHP
PHP是在服务器端执行的语言,用于网站的编程。2019年起,PHP官方将停止对PHP5.6.x的安全支持。及时升级PHP十分必要,不仅能提升网站加载速度,还能提升站点的安全性。
我使用的是阿里云轻量型应用服务器,找不到图形化升级的界面,只能通过终端对服务器进行配置。由于之前我对Wordpress的运作和配置的知识几乎为零,从着手研究PHP升级至升级成功,花了约一周。本文记录了我的操作步骤,过程中遇到的问题和相应的解决方案。
1 了解软件安装路径
可在阿里云轻量应用服务器管理控制台查看,我的站点:
软件 | 版本 | 路径 |
---|---|---|
Apache | 2.4 | /etc/httpd |
PHP | 5.6 | /usr/local/php |
MySQL | 5.6 | /var/lib/mysql |
WordPress | 4.8 | /your_path/www/wordpress |
记录下这些路径信息,之后的升级过程中会用到。
2 参考教程
我参考了云栖社区教程:https://yq.aliyun.com/articles/717769,文中提供了脚本可直接执行来完成升级。我没有试过,看评论区部分读者能成功升级,可以一试。
云栖社区教程的基本结构为:
1 安装前准备
1.1 安装依赖
1.2 配置SWAP
1.3 安装libzip
2 编译安装PHP
3 修改配置文件
4 验证
步骤1按教程执行起来没有任何问题。
在2 编译安装PHP这一步,./configure 后面参数再多加一个“–with-apxs2”参数,否则不会生成libphp7.so。值为”/bin/apxs”,如果该路径没有apxs文件夹,你可以使用”which apxs”寻找apzs的路径。所以配置configure选项这一步应输入:
./configure --prefix=/usr/local/php73 --enable-soap --enable-cgi --with-mysql=/usr/local/mysql --with-mysqli=mysqlnd --with-gd --with-pdo-mysql=mysqlnd --with-zlib --enable-zip --enable-fpm --without-pear --disable-phar --with-openssl --enable-mbstring=all --with-jpeg-dir=/usr --with-png-dir=/usr --with-curl --with-freetype-dir=/usr --enable-gd-native-ttf --with-xsl=/usr --enable-calendar --enable-exif --enable-ftp --with-iconv --enable-bcmath --with-mcrypt=/usr/local/libmcrypt --enable-opcache --with-apxs2=/bin/apxs
在3 修改配置文件这一步,我发现Apache路径: /etc/httpd/conf 下的httpd.conf并没有红框标识的代码行。输入:
grep -n php5 httpd.conf
查找httpd.conf文件中带有“php5”的位置。结果如下:
第175行是注释,将55行和290行的 php5 修改为 php7即可。
编译完成后,会提示你使用make test,最后可能会有几个bug,网上查了一下,可以忽视这里的问题。
3 41位hash
参考博文:https://blog.csdn.net/qq_34436187/article/details/86767877
解决该问题需要修改数据库密码,修改完密码后需要修改Wordpress里的配置文件中的内容。配置文件wp-config.php在wordpress的安装目录中。
4 修改Wordpress配置文件中的localhost
将wp-config.php中的define(‘DB_HOST’, ‘localhost‘)改成define(‘DB_HOST’, ‘127.0.0.1‘)。