Centos7 安装 PHP7最新版的详细教程

方法一、简单安装(通过yum)

1.安装epel-release

rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

2.安装PHP7的rpm源

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

3.安装PHP7

yum install php70w

方法二、编译安装

1.下载php7

wget -O php7.tar.gz http://cn2.php.net/get/php-7.1.1.tar.gz/from/this/mirror

2.解压php7

tar-xvf php7.tar.gz

3.进入php目录

cdphp-7.0.4

4.安装依赖包

2# 直接复制下面一行(不包括本行)

yum install libxml2 libxml2-devel openssl openssl-develbzip2bzip2-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

5.编译配置(如果出现错误,基本都是上一步的依赖文件没有安装所致)

嫌麻烦的可以从这一步起参考PHP官方安装说明:http://php.net/manual/zh/install.unix.nginx.php

./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-mcrypt --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --enable-mbregex --enable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear --enable-opcache

6.正式安装

make&&make install

7.配置php-fpm

cp php.ini-production /etc/php.ini

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod +x /etc/init.d/php-fpm

8.启动php-fpm

/etc/init.d/php-fpm start


*注:如果启动失败,报错

Starting php-fpm [12-Oct-2017 18:37:22] ERROR: [pool www] cannot get uid for user 'nginx'

[12-Oct-2017 18:37:22] ERROR: FPM initialization failed

Starting php-fpm [12-Oct-2017 18:55:25] ERROR: [pool www] please specify user and group other than root

[12-Oct-2017 18:55:25] ERROR: FPM initialization failed

猜测是用户原因,因为默认的是nobody(可以使用 ps axu|grep nginx 来查看或查看nginx.conf文件,nginx的用户名和组正常情况下是在nginx.conf配置文件中,有一个user参数)


ps axu|grep nginx

解决办法:修改/usr/local/php/etc/php-fpm.d/www.conf配置文件(与nginx.conf保持一致)


Centos7 安装 PHP7最新版的详细教程_第1张图片
vim /usr/local/php/etc/php-fpm.d/www.conf

nginx解析PHP的配置文件

Centos7 安装 PHP7最新版的详细教程_第2张图片
default_server是IP访问时默认的文件配置,域名访问时不需要

你可能感兴趣的:(Centos7 安装 PHP7最新版的详细教程)