php7使用最多版本,安装多个 PHP 版本(PHP7, PHP5)-Go语言中文社区

安装 PHP 5.6

PHP 5 和 PHP 7 的安装其实是大同小异。目前最新版本是 php-5.6.21。先下载源码:[root@lnmp ~]# cd /usr/local/src

[root@lnmp src]# wget -c http://cn2.php.net/distributions/php-5.6.21.tar.gz

解压:[root@lnmp src]# tar -zxvf php-5.6.21.tar.gz

configure. 其中安装路径为 /usr/local/php5:[root@lnmp src]# cd php-5.6.21/

[root@lnmp php-5.6.21]# ./configure  --prefix=/usr/local/php5 --enable-fpm --with-mysql  --with-mysqli --with-zlib --with-curl --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-openssl --enable-mbstring --enable-xml --enable-session --enable-ftp --enable-pdo

安装:[root@lnmp php-5.6.21]# make

[root@lnmp php-5.6.21]# make install

配置 PHP 5.6[root@lnmp php-5.6.21]# cp php.ini-development /usr/local/php5/lib/php.ini

[root@lnmp php-5.6.21]# vim /usr/local/php5/lib/php.ini

查找 mysql.default_socket 改成mysql.default_socket = /var/lib/mysql/mysql.sock

查找 mysqli.default_socket 改成:mysqli.default_socket = /var/lib/mysql/mysql.sock

根据自己需要修改时区,查找 date.timezone,将前面的 ; 去掉,改成:date.timezone = PRC

好了,PHP 5.6 已经安装完成:root@lnmp php-5.6.21]# /usr/local/php5/bin/php -v

PHP 5.6.21 (cli) (built: May 18 2016 17:31:13)

Copyright (c) 1997-2016 The PHP Group

Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

配置 php-fpm[root@lnmp php-5.6.21]# cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf

[root@lnmp php-5.6.21]# vim /usr/local/php5/etc/php-fpm.conf

查找 user 将user = nobody

group = nobody

改成user = nginx

group = nginx

查找 listen 将listen = 127.0.0.1:9000

改成listen = 127.0.0.1:9001

这里是因为 PHP 7 已经占用了 9000 端口,所以用 9001 端口

配置 php-fpm 服务

因为 PHP 7 的服务文件为 php-fpm.service 所以这里用 php5-fpm.service[root@lnmp php-5.6.21]# cp sapi/fpm/php-fpm.service /usr/lib/systemd/system/php5-fpm.service

[root@lnmp php-5.6.21]# vim /usr/lib/systemd/system/php5-fpm.service

将:PIDFile=${prefix}/var/run/php-fpm.pid

ExecStart=${exec_prefix}/sbin/php-fpm --nodaemonize --fpm-config ${prefix}/etc/php-fpm.conf

改成PIDFile=/usr/local/php5/var/run/php-fpm.pid

ExecStart=/usr/local/php5/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php5/etc/php-fpm.conf

这里做的就是用刚才 PHP 5 安装路径替代 prefix 变量

重新载入 systemd[root@lnmp php-5.6.21]# systemctl daemon-reload

可以设置开机启动:[root@lnmp php-5.6.21]# systemctl enable php5-fpm

立即启动 php-fpm[root@lnmp php-5.6.21]# systemctl start php5-fpm

查看状态:[root@lnmp php-5.6.21]# systemctl status php5-fpm

php5-fpm.service - The PHP FastCGI Process Manager

Loaded: loaded (/usr/lib/systemd/system/php5-fpm.service; disabled)

Active: active (running) since Wed 2016-05-18 18:06:40 CST; 28s ago

Main PID: 5867 (php-fpm)

CGroup: /system.slice/php5-fpm.service

├─5867 php-fpm: master process (/usr/local/php5/etc/php-fpm.conf)

├─5868 php-fpm: pool www

└─5869 php-fpm: pool www

May 18 18:06:40 lnmp.cn systemd[1]: Started The PHP FastCGI Process Manager.

[root@lnmp php-5.6.21]#

配置不同的 nginx 站点使用不用的 PHP 版本

为网站创建一个目录:[root@lnmp php-5.6.21]# mkdir -p /www/dev.lnmp.cn

创建 phpinfo 文件[root@lnmp php-5.6.21]# vim /www/dev.lnmp.cn/phpinfo.php

输入,并保存:<?php

phpinfo();

创建 nginx 站点配置文件[root@lnmp php-5.6.21]# cd /etc/nginx/conf.d/

[root@lnmp conf.d]# vim dev.lnmp.cn.conf

输入,并且保存:server {

listen       80;

server_name  dev.lnmp.cn;

root         /www/dev.lnmp.cn;

location / {

index  index.php index.html index.htm;

}

location ~ .php$ {

fastcgi_pass   127.0.0.1:9001;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

}

控制那个站点使用那个版本的 PHP 关键是在 fastcgi_pass 的端口:fastcgi_pass   127.0.0.1:9001;

9001 是 PHP 5 端口,如果要用 PHP 7,则用 9000端口。

应该大功告成了,立即 reload nginx[root@lnmp conf.d]# systemctl reload nginx

查看 phpinfo

dfcd73c10322a789d5b9d1ddf97844fc.png

3b895f92e0a0161e8fddaa0970feead1.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值