You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu16.04+Apache2.4.29的不同虚拟主机同时运行php7.0-fpm与php5.6-fpm?

没问题,我帮你搞定这个不同虚拟主机对应不同PHP版本的需求,Ubuntu 16.04下这套流程我折腾过好几次,稳得很。咱们一步步来:

步骤1:安装PHP 5.6-FPM

Ubuntu 16.04的默认软件源里没有PHP 5.6,得先添加第三方PPA源,推荐用Ondřej Surý的源——这是PHP官方维护者的源,靠谱得很:

  1. 先安装软件源管理工具(如果没装的话):
    apt install software-properties-common
    
  2. 添加PHP PPA源:
    add-apt-repository ppa:ondrej/php
    
  3. 更新软件源缓存:
    apt update
    
  4. 安装PHP 5.6-FPM:
    apt install php5.6-fpm
    

安装完成后,检查服务是否正常运行:

systemctl status php5.6-fpm

看到active (running)就说明没问题了。

步骤2:配置Apache虚拟主机,指定对应PHP版本

你之前已经配置过Apache的HTTP/2和PHP 7.0-FPM,现在只需要给旧站点的虚拟主机单独设置PHP 5.6的FastCGI代理即可。

先确认Apache已启用必要模块

确保proxy_fcgi和setenvif模块已经启用(之前配置PHP 7.0时应该已经开了,但再确认下):

a2enmod proxy_fcgi setenvif
systemctl restart apache2

修改旧站点的虚拟主机配置

找到你旧站点的虚拟主机配置文件,比如/etc/apache2/sites-available/old-site.conf,编辑它:

nano /etc/apache2/sites-available/old-site.conf

在<VirtualHost *:443>(因为你用了HTTP/2,肯定是HTTPS)块里,添加以下配置,替换掉原来的PHP 7.0相关配置:

# 启用HTTP/2(如果你之前没加的话,确保加上)
Protocols h2 http/1.1

# 配置PHP 5.6-FPM代理
<FilesMatch \.php$>
    SetHandler "proxy:unix:/run/php/php5.6-fpm.sock|fcgi://localhost/"
</FilesMatch>

# 修复HTTP_AUTHORIZATION变量丢失的问题
SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1

而你的新站点(用PHP 7.0的)的虚拟主机配置里,保持原来的PHP 7.0-FPM配置即可:

<FilesMatch \.php$>
    SetHandler "proxy:unix:/run/php/php7.0-fpm.sock|fcgi://localhost/"
</FilesMatch>

测试并重启Apache

配置完后,先检查配置文件有没有语法错误:

apache2ctl configtest

如果输出Syntax OK,就重启Apache生效:

systemctl restart apache2
步骤3:验证配置是否生效

分别在旧站点和新站点的根目录下创建一个phpinfo.php文件,内容如下:

<?php
phpinfo();
?>

访问旧站点的http(s)://你的旧域名/phpinfo.php,查看页面顶部的PHP Version,应该显示5.6.x;访问新站点的对应页面,应该显示7.0.x。如果都正常,就说明配置成功了。

额外注意事项
  • 权限问题:确保PHP-FPM的运行用户(默认是www-data)对两个站点的文件目录有读写权限,避免出现权限错误。
  • 扩展需求:如果旧站点需要PHP 5.6的特定扩展,可以用apt install php5.6-xxx来安装,比如php5.6-mysql、php5.6-gd等。
  • 清理无用配置:如果之前尝试配置PHP 5.6时加了一些无效的配置,记得删掉,避免冲突。

内容的提问来源于stack exchange,提问作者peppy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:35:02