24522

Centos7 Yum 安装PHP到指定目录,PHP多版本共存

背景

有时候需要在服务器上安装多个版本PHP,然而编译安装又不能使用yum安装依赖和维护扩展,故用此方法安装配置多个PHP环境。服务器上的第一个PHP环境可以直接使用yum安装,然后第二、第三个甚至更多,则需要使用如下的命令安装,并且配置

安装命令

yum install -c /etc/yum.conf --installroot=/usr/local/php/ --releasever=/ --enablerepo=remi-php71 php php-opcache php-mbstring php-mcrypt php-fpm php-cli php-xml php-redis php-mysqlnd php-pdo php-phalcon php-common php-json 

⚠️注意:
installroot 为要安装到的目录
php 和 php扩展自行选择
其余参数固定

配置

修改/usr/local/php/etc/php.ini
修改/usr/local/php/etc/php-fpm.conf
修改/usr/local/php/etc/php-fpm.d/*.conf

运行php-fpm

需先修改php-fpm.service 文件的ExecStart值,修改为:

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

路径为自定义安装的路径,请自行修改

php命令行

每次运行php命令需要带上配置文件路径,感觉特别麻烦,所以建议配置alias

alias php7='PHP_INI_SCAN_DIR=/usr/local/php/etc/php.d /usr/local/php/bin/php -c /usr/local/php/etc/php.ini'

配置好alias后,命令行就可以直接使用别名执行php命令了,比如:php7 -v

shell_php_-v.png

⚠️alias里设置 PHP_INI_SCAN_DIR=/usr/local/php/etc/php.d 的目的是指定php扫描扩展的路径,必须设置


文章作者:DOTATONG
发布日期:2017-11-04

评论

暂无

添加新评论