Apache2.4 - PHP 5.6 和 PHP7.1 同时运行

Posted

技术标签:

【中文标题】Apache2.4 - PHP 5.6 和 PHP7.1 同时运行【英文标题】:Apache2.4 - PHP 5.6 and PHP7.1 running at the same time 【发布时间】:2018-01-04 03:42:58 【问题描述】:

我希望在我的开发服务器 (Debian 9) 中使用 Apache 同时运行 php 5.6 和 7.1。我知道 nginx 可以轻松处理这个问题,但我真的需要 Apache。

这里是confs

# My main configuration file, running with PHP7.1

<VirtualHost xx.xx.xx.xx:80>
    ServerName www.mydomain.com
    ServerAlias mydomain.com

    DocumentRoot /var/www/mydomain.com/html
</VirtualHost>

<VirtualHost xx.xx.xx.xx:80>
    ServerName xx.xx.xx.xx

    <Directory />
        Deny from all
    </Directory>
</VirtualHost>


# PHP 5.6

<VirtualHost xx.xx.xx.xx:80>
    ServerName foo.mydomain.com

    DocumentRoot /var/www/foo.mydomain.com/html

    <FilesMatch \.php$>
        SetHandler "proxy:unix:/var/run/php/php5.6-fpm.sock"
    </FilesMatch>
</VirtualHost>

7.1 正在运行,而 5.6 返回 404。谢谢!

【问题讨论】:

【参考方案1】:

如果您已经在笔记本电脑中安装了 PHP 5.6 和 PHP 7.1,并且将 Apache 作为 Web 服务器。然后使用下面的命令交替运行两个 PHP 版本。

运行 PHP 5.6 和停止 PHP 7.1 的步骤:

sudo a2dismod php7.1 sudo a2enmod php5.6 sudo service apache2 restart

运行 PHP 7.1 和停止 PHP 5.6 的步骤:

sudo a2dismod php5.6 sudo a2enmod php7.1 sudo service apache2 restart

最后运行phpinfo(); 来检查当前运行的是哪个版本的php。

注意:要在 Debian Jessie 中安装 PHP7.1,请使用以下链接。 https://techglimpse.com/install-php-debian-jessie-linux/

【讨论】:

结合Install php5.6 in debian 9的答案,它也适用于Debian Stretch。谢谢。【参考方案2】:

类似的问题已经被问过了。转到此链接。请阅读给定链接上的所有内容。这可能会有所帮助。 Run multiple php version on Apache serve using fast-cgi

【讨论】:

以上是关于Apache2.4 - PHP 5.6 和 PHP7.1 同时运行的主要内容,如果未能解决你的问题,请参考以下文章

PHP搭建(windows64+apache2.4.7+mysql-5.6+php5.5)

php5.5.6如何配置

windows本地自己搭建的PHP7+Apache2.4环境使用composer安装laravel5.5

php5.5 + apache2.4 安装配置

01.WAMP搭建 [Win7+Apache2.4+MySQL5.7+PHP7

php5.4 升级至php5.6遇到到问题