迁移typecho到Redhat记录

niaiai 2019-06-20 PM 233℃ 0条

安装nginx

可以使用yum安装yum install nginx
nginx需要root启动,工作进程为nginx用户,nginx组

安装php7

可以使用yum安装yum install php
但是这样安装没有数据驱动PDO
所以考虑源码编译安装

  • 下载源码
    curl -o php.tar.bz2 https://www.php.net/distributions/php-7.1.30.tar.bz2

或者
wget -O php.tar.bz2 https://www.php.net/distributions/php-7.1.30.tar.bz

  • 安装依赖
    sudo yum install -y libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel gcc make gcc-c++
  • 解压进入解压目录
    tar jxf php.tar.bz2
  • 配置
    ./configure --prefix=/mnt/php7 --with-mysqli --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-simplexml --enable-xml --disable-rpath --enable-bcmath --enable-soap --enable-zip --with-curl --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-mbstring --enable-sockets --with-gd --with-openssl --with-mhash --enable-opcache --disable-fileinfo
  • 安装
    make && make install

配置php

# 1. 修改 /mnt/php7/etc/php-fpm.d/www.conf 启动用户/用户组
 23 user = nginx
 24 group = nginx
# 2. 修改php-fpm监听的sock文件
 36 listen = /run/php-fpm/www.sock
# 3. 修改sock文件权限 去掉注释
 49 listen.mode = 0666
 
# 4. 增加PID文件 修改 /mnt/php7/etc/php-fpm.conf
 17 pid = /run/php-fpm.pid

php-fpm命令

# 重启
sudo kill -usr2 `cat /var/run/php-fpm.pid`
# 关闭
sudo kill -INT `cat /var/run/php-fpm.pid`
# 启动
sudo /mnt/php7/sbin/php-fpm

测试php

<?php
    echo phpinfo();
?>

常见问题

php-fpm与nginx通信connect() to unix:/tmp/php-fpm.sock failed (13: Permission denied) 的解决方法
参照配置php第三步修改后关闭再启动php-fpm

php (13: Permission denied)的问题
或许是Redhat的权限的问题
sudo setenforce 0

参考资料

nginx php-fpm安装配置
php-fpm启动,重启,终止操作
源码安装 PHP 7.3

非特殊说明,本博所有文章均为博主原创。

评论啦~