接上一篇:https://blog.phpstu.com/server/nginx-server/716
7.1新特性http://php.net/manual/zh/migration71.new-features.php 挺牛的,我觉得新项目最好还是用新版的PHP,性能会有不少提升。旧项目就要慎重考虑了毕竟重构也是很耗时的
下面开始安装:
版本信息
php-7.1.7
准备依赖文件
这里我直接通过yum进行安装依赖文件
1 2 3 | yum install epel-release yum update yum -y install libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel curl curl-devel php-mcrypt libmcrypt libmcrypt-devel openssl-devel gd mcrypt mhash libicu-devel |
下载php7.1.7(目前最新版,2017-07-08),并解压
1 2 3 4 5 | mkdir -p /usr/local/src/php-files cd /usr/local/src/php-files wget http://php.net/distributions/php-7.1.7.tar.gz tar zxvf php-7.1.7.tar.gz cd php-7.1.7 |
开始编译安装(经典三步)
1 2 3 | ./configure --prefix=/usr/local/php71 --enable-fpm --with-mcrypt --enable-bcmath --with-curl --with-gd --enable-gd-native-ttf --with-freetype-dir --enable-intl --enable-gd-jis-conv --with-mysql-sock=/tmp/mysqld.sock --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-libxml-dir=/usr/lib64 --with-mhash --enable-sockets --with-png-dir=/usr/lib64 --with-jpeg-dir=/usr/lib64 --with-zlib --enable-opcache --enable-zip --enable-mbstring --with-openssl --with-pcre-regex make make install |
说明:
- 指定安装目录为php71,当然这仅仅是为以后方便我们后续做多版本共存,根据不同版本设置不同的目录
- 如果想装PHP5.3/5.4 /5.5/ 5.6可以在上面的configure 后面加上 –with-mysql=mysqlnd
- 如果想装php7.0.x系列 可以直接用上面的configure ,提示:–with-mysql在7.x开始被完全移除
- 因从php5.3开始增加选项 –enable-mysqlnd ,所以编译php的时不需要安装mysql,也不用指定MySQL安装目录
copy配置文件
1 2 3 | cp php.ini-production /usr/local/php71/lib/php.ini cp /usr/local/php71/etc/php-fpm.d/www.conf.default /usr/local/php71/etc/php-fpm.d/www.conf cd /usr/local/php71/ |
说明:
- 如果你是用于开发环境,可以拷贝php.ini-development
- php-fpm启动时如果不指定配置文件默认加载的是 php71/etc/php-fpm.conf
- 7.1版本安装后,在/path/etc/php-fpm.d/ 目录。我们可以把配置文件放到这里面,这样做的好处是可以做多个配置文件,当然如果没有这个需求,可以直接放到/path/etc/下面。
修改配置文件
1.修改php.ini(我只是根据我的需求来修改的)
request_orders = GPC 这个ECSHOP和DZ论坛是需要的
upload_max_filesize = 128M 改成了128
post_max_size = 128M 改成128
memory_max_size=128 这个默认
开启opcache
2.修改php-fpm配置文件
- 修改里面的
;user = nobody
;group = nobody
改成
user = www
group = www
#PS:www还记得安装nginx的时候新增的www系统用户吗? - 修改,这里一定要改,不然php-fpm启动后会导致sock文件属于root用户root组其它组无权读写
;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660
改成
listen.owner = www
listen.group = www
listen.mode = 0660 - listen = 127.0.0.1:9000
改成
listen = /dev/shm/php71-cgi.sock我这里需要改成 ,因为我想装多个PHP版本 压力大的时候用sock要比tcp好点
有人觉得scok不稳定,这个看自己需求,不作讨论
一个子进程大概占用 20M左右 40个2g (服务器内存是4G的)具体多少,还是需要根据你的实际情况来配置。pm.max_children = 5
改成
pm.max_children = 40
设置php-fpm开机自启动
找到在安装nginx的时候的lnmp服务/etc/init.d/lnmp 并编辑
看下版本
OK,到此php-7.1.7安装完成
未经允许不得转载:开心乐窝-乐在其中 » centos7+php71 安装流程