前言
ripro主题老是更新啊, 更新后会修复bug和添加新功能, 搞得我魔改后得主题不好更新啊, 所以还是决定记录下更新步骤, 并且保留简单得魔改, 复杂得只能舍弃掉了. 否则以后又更新ripro主题又很麻烦了.
下面就记录下升级步骤.
安装php 7.4.12版本
ripro8.6版本说推荐使用7.4+php版本, 没办法只能重新编译安装了
1. 下载7.4.12版本
mkdir /usr/local/temp/php
cd /usr/local/temp/php
wget https://www.php.net/distributions/php-7.4.12.tar.gz
2. 编译安装
tar -xzvf php-7.4.12.tar.gz
cd /usr/local/temp/php/php-7.4.12
mkdir -p /usr/local/php/php-7.4.12
#配置
./configure \
--prefix=/usr/local/php/php-7.4.12 \
--enable-fpm \
--with-mysql \
--with-pdo-mysql \
--with-mysqli \
--enable-mbstring \
--enable-xml \
--with-gd \
--with-jpeg-dir \
--with-curl \
--with-openssl \
--with-zlib \
--disable-fileinfo
#编译
make
#安装
make install
配置php时的错误解决
yum install -y libxml2-devel sqlite-devel libcurl-devel oniguruma-devel
问题: 安装php7.4的时候发现
gd
模块没安装成功, 导致支付宝当面付的图片不显示 解决: 重新编译安装gd模块.
编译时如果报错
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1
,那是因为服务器内存太小的原因, 所以在配置的时候要加上--disable-fileinfo
如果报错或者make: *** [Zend/zend_execute.lo] Error 1
, 那同样是因为内存太小了, 要释放内存
3. 修改/etc/profile中php命令地址
vim /etc/profile
source /etc/profile
4. 安装swoole.so扩展
ripro需要依靠这个模块进行加密, 所以必须安装.
因为该扩展不在php自带的包中, 必须远程下载安装, ripro主题的作者已经给了我们下载地址.
cd /usr/local/temp/php
wget https://business.swoole.com/static/loader2.2.0/swoole_loader74.so
chmod 755 swoole_loader74.so
mv /usr/local/temp/php/swoole_loader74.so /usr/local/php/php-7.4.12/lib/php/extensions/no-debug-non-zts-20190902/
5. 把配置文件下载到本地文件夹
#下载php.ini配置文件
scp -r xxx@xxxxxx:/usr/local/temp/php/php-7.4.12/php.ini-production ./php/
php.ini
#下载php-fpm.conf配置文件
scp -r xxx@xxxxxx:/usr/local/php/php-7.4.12/etc/php-fpm.conf.default ./php/php-fpm.conf
#下载www.conf配置文件
scp -r xxx@xxxxxx:/usr/local/php/php-7.4.12/etc/php-fpm.d/www.conf.default ./php/php-fpm.d/www.conf
6. 修改配置文件
修改www.conf
#修改文件内容
user = nginx
group = nginx
listen = 127.0.0.1:9000 #这个按需配置,如果有多个fpm,需要改动端口号
修改php-fpm.conf
include=/usr/local/sszas.cn/php/php-fpm.d/*.conf
修改php.ini
#添加swoole扩展
extension=/usr/local/php/php-7.4.12/lib/php/extensions/no-debug-non-zts-20190902/swoole_loader74.so
7. 同步本地文件内容到服务器
8. 重启php-fpm
#关闭原来的php-fpm, 其实这一步骤我一开始就做了, 不过放这里也没关系
killall php-fpm
#启动
php-fpm -y /usr/local/sszas.cn/php/php-fpm.conf -c /usr/local/sszas.cn/php/php.ini
9. 启动mysqld
因为我内存比较下, 为了顺利安装先关闭了这个服务
systemctl start mysqld
10. 启动nginx
nginx -c /usr/local/sszas.cn/nginx/nginx.conf
总结
经过以上步骤, 我们就能更新ripro主题而且保留一部分魔改. 然而涉及到ripro作者底层代码的魔改只能舍弃了, 哎, 没办法...