当前位置:-go»- 网站首页 / 軟件应用區 / 正文

Ubuntu 系统中 安装Apache和安装多个版本PHP实例

12个月前 (05-31) / 117 次围观 / 0 次吐槽

        通常主机管理器为每个PHP版本应用程序部署使用单独的服务器。这增加了托管成本。一些主机管理器正在使用Docker在单个服务器上运行多个PHP版本。另外,你们中大多数人都知道我在本教程中使用的配置。但是某些系统管理员对此并不了解。本教程将帮助您在Ubuntu 20.04 Linux系统上使用Apache 安装多个PHP版本,而无需切换PHP版本。


        本教程介绍了具有单独PHP版本的Apache上两个VirtualHost的安装和配置。第一个VirtualHost将与PHP 5.6一起使用,另一个VirtualHost将与PHP 7.2一起运行。因此,只需阅读本教程即可。您也可以根据需要在Apache上使用两个以上的PHP版本,但是本教程仅涉及两个。


1、安装Apache


Apache Web服务器软件包在默认存储库中可用。在Ubuntu系统上打开一个终端,然后执行以下命令来安装Apache Web服务器的最新可用版本。


sudo apt update

sudo apt install apache2 libapache2-mod-fcgid


2、安装PHP


长期以来,一直为在Ubuntu系统上安装PHP维护PPA。您只需要将该PPA添加到系统中即可安装软件包。使用以下几个命令将PPA添加到系统中。


sudo apt install software-properties-common

sudo add-apt-repository ppa:ondrej/php



在本教程中,我们使用PHP 5.6和PHP 7.4来配置Apache Web服务器。要使用多个PHP版本,我们将使用 PHP FPM和FastCGI。让我们在系统上安装以下软件包。


sudo apt update -y

sudo apt install php5.6 php5.6-fpm -y

sudo apt install php7.4 php7.4-fpm -y



安装后,php-fpm服务将自动启动。使用以下命令确保两个服务都在运行。


sudo systemctl status php5.6-fpm

sudo systemctl status php7.4-fpm



3、使用多个PHP配置Apache


现在启用与Apache一起配置多个PHP版本所需的几个模块。这些模块是将PHP FPM和FastCGI与Apache服务器集成所必需的。


        sudo a2enmod actions fcgid alias proxy_fcgi



准备在Apache服务器上配置网站。为了进行测试,我正在配置两个网站以使用两个不同的2个PHP版本。首先,在服务器上创建两个目录。


sudo mkdir /var/www/php56-app

sudo mkdir /var/www/php74-app



现在,创建并包含phpinfo();函数的index.php 。


echo “<?php phpinfo(); ?>” > /var/www/php56-app/index.php

echo “<?php phpinfo(); ?>” > /var/www/php74-app/index.php



创建VirtualHost。Apache将所有VirtualHost配置文件保留在/ etc / apache2 / sites下(扩展名为.conf)。为第一个虚拟主机创建一个文件,然后在您喜欢的文本编辑器中进行编辑。


        sudo vim /etc/apache2/sites-available/php56.example.com.conf



添加以下内容。确保根据您的设置使用正确的ServerName和目录路径。该网站配置为可与PHP 5.6一起使用。


<VirtualHost *:80>
    ServerName php56.example.com
    DocumentRoot /var/www/php56-app
    <Directory /var/www/php56-app>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
    <FilesMatch \.php$>
        # Apache 2.4.10+ can proxy to unix socket
        SetHandler "proxy:unix:/var/run/php/php5.6-fpm.sock|fcgi://localhost"
    </FilesMatch>
</VirtualHost>



 同样,创建第二个VirtualHost配置文件以与PHP 7.2一起使用。在文本编辑器中编辑配置文件:


        sudo vim /etc/apache2/sites-available/php74.example.com.conf


将以下内容添加到具有正确的ServerName和DocumentRoot的文件中。


<VirtualHost *:80>
    ServerName php74.example.com
    DocumentRoot /var/www/php74-app
    <Directory /var/www/php74-app>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
    <FilesMatch \.php$>
        SetHandler "proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost"
    </FilesMatch>
</VirtualHost>



两个网站都已配置。但是他们仍然不活跃。Apache将活动站点保留在/etc/apache2/sites-enabled目录下。您可以简单地创建到该目录的配置文件的符号链接,或使用下面的命令执行相同的操作。



开启站点:


sudo a2ensite php56.example.com

sudo a2ensite php74.example.com



完成所有更改后,重新启动Apache以重新加载新的设置更改。


sudo systemctl restart apache2



您的设置现已完成。转到下一步以测试您的设置。



4、测试您的设置



在本地系统上编辑/ etc/hosts文件,然后输入如下内容。这会将临时名称解析为本地主机IP地址。


sudo vim /etc/hosts



将以下条目添加到文件末尾


127.0.0.1 php74.example.com

127.0.0.1 php56.example.com



打开网络浏览器并访问两个站点。你会看到,php56.example.com显示版本PHP 5.6和php74.example.com正显示出PHP 7.4的配置。


http://php74.example.com。

http://php56.example.com。



本教程可帮助您在Ubuntu 20.04系统上的单个Apache服务器上设置具有不同2 PHP版本的多个网站。



安装PHP模块


您可能还需要根据应用程序要求安装模块。使用以下命令在软件包存储库中搜索可用的PHP 7模块。


sudo apt-cache search php7*



您可以在系统上安装所需的PHP模块。只需根据您的要求使用软件包名称更改PHP版本:


sudo apt install php7.4-mysql php7.4-curl php7.4-json php7.4-cgi php7.4-xsl



切换PHP版本


update-alternatives --display php   【查看所有 php 版本和当前版本】


您可以使用update-alternatives命令设置默认的PHP版本。


update-alternatives --config php


根据您的要求选择PHP版本号。这只会更改PHP CLI版本。


本教程可帮助您在Ubuntu系统上安装PHP 7.4、7.3、7.2或PHP 5.6。


文本摘自:https://www.cnblogs.com/zjllearn/p/13511096.html

更新: 2023-10-18

相關 操作系統

本筆記站部分文章、圖片收集於 互聯網,作者:僅作自學筆記;請勿轉載用於 非法途逕 , 轉載注明 _ 我欣飞祥
Url : 【 http://uuucd.cn/software/1844.html
额~ 本文暂时没人评论 来添加一个吧 …

发表评论

必填

选填

选填

必填

◎请提交您的留言_感谢您的参与讨论!!

ipcooc2@gmail.com