Linux 安装多个php版本并配置
我已经安装了php7.4,现在想再安装一个7.1,则
mkdir -p /lnmp/php71
wget https://www.php.net/distributions/php-7.1.18.tar.gz
tar -zxvf php-7.1.18.tar.gz
cd php-7.1.18
./configure --prefix=/lnmp/php71 --enable-fpm --with-mysqli --with-curl --with-pdo_mysql --with-pdo_sqlite --enable-mysqlnd --enable-mbstring --with-gd
make
make install
cp php.ini-development /lnmp/php71/lib/php.ini
重命名:
cd /lnmp/php71/etc
mv php-fpm.conf.default php-fpm.conf
mv php-fpm.d/www.conf.default php-fpm.d/www.conf
更改侦听端口(127.0.0.1:9000 为默认的):
cd /lnmp/php71/etc/php-fpm.d
vim www.conf
修改配置文件php.ini(vim /lnmp/php71/lib/php.ini)
cgi.fix_pathinfo=0
启动php-pfm
/lnmp/php71/sbin/php-fpm
查看是否启动成功:
ps aux|grep php
若出现以下提示,则表示安装多版本php成功
设置开机启动php
vim /etc/init.d/php71-fpm
添加以下命令行:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | #!/bin/sh # chkconfig: 2345 15 95 # description: PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI implementation \ # with some additional features useful for sites of any size, especially busier sites. # DateTime: 2016-09-20 # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ "$NETWORKING" = "no" ] && exit 0 phpfpm= "/lnmp/php71/sbin/php-fpm" prog=$( basename ${phpfpm}) lockfile=/ var /lock/subsys/phpfpm start() { [ -x ${phpfpm} ] || exit 5 echo -n $ "Starting $prog: " daemon ${phpfpm} retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval } stop() { echo -n $ "Stopping $prog: " killproc $prog -QUIT retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval } restart() { configtest || return $? stop start } reload() { configtest || return $? echo -n $ "Reloading $prog: " killproc ${phpfpm} -HUP RETVAL=$? echo } force_reload() { restart } configtest() { ${phpfpm} -t } rh_status() { status $prog } rh_status_q() { rh_status >/dev/null 2>&1 } case "$1" in start) rh_status_q && exit 0 $1 ;; stop) rh_status_q || exit 0 $1 ;; restart|configtest) $1 ;; reload) rh_status_q || exit 7 $1 ;; status) rh_status ;; *) echo $ "Usage: $0 {start|stop|status|restart|reload|configtest}" exit 2 esac |
其中,phpfpm="/lnmp/php71/sbin/php-fpm" 需要改成php程序执行的路径
设置文件权限:
chmod a+x /etc/init.d/php71-fpm
加到开机启动项:
chkconfig --add php71-fpm
加入成功之后,可使用以下指令了
service php71-fpm start
service php71-fpm restart
service php71-fpm stop
♥ 作者:离岸少年
♠ 出处:https://www.cnblogs.com/jackzhuo/
♣ 本博客大多为学习笔记或读书笔记,本文如对您有帮助,还请多推荐下此文,如有错误欢迎指正,相互学习,共同进步。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理