如何在 RHEL 7.2 中安装 PHP 5.6 和 Apache?
默认情况下,RHEL 7.2 仅包含 php5.4 和 php5.5。要使用 php5.6,请使用 RHSCL 存储库,并手动配置 httpd.conf 以使用它们。
因为 RHEL 无法通过 php5.6 支持 mod_php,所以您必须使用 php-fpm 并通过 mod_proxy_fcgi 运行它。
sudo yum update rh-amazon-rhui-client.noarch
sudo yum-config-manager --enable rhui-REGION-rhel-server-rhscl
sudo yum install httpd rh-php56 rh-php56-php rh-php56-php-fpm
要安装其他模块(例如,php-mysql 模块),可使用如下命令进行搜索和安装:
sudo yum search rh-php56
sudo yum install rh-php56-php-mysql
sudo systemctl start rh-php56-php-fpm.service
sudo systemctl status rh-php56-php-fpm.service
sudo vi /etc/httpd/conf/httpd.conf
将以下内容添加到 IncludeOptional conf.d/*.conf 之前:
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/html/$1
使用 :wq 命令保存配置。
PHP-FPM 默认在 127.0.0.1:9000 下运行。要处理您的根 Web 文件夹下的所有 php 文件,请使用如下地址:
fcgi://127.0.0.1:9000/<您的网站应用程序的根文件夹>/$1
注意:有关 PHP-FPM 的更多信息,请参阅使用 mod_proxy_fcgi 和 php-fpm 的 apache httpd 2.4.x 上的高性能 PHP。
sudo systemctl restart httpd.service
sudo systemctl status httpd.service
sudo vi /var/www/html/info.php
将以下内容添加到新文件:
使用 :wq 命令保存配置。
要验证您的配置是否已成功加载,请在 EC2 管理控制台中找到您的实例的公有 IP 地址。在实例上打开一个浏览器,然后导航到 http://<实例的公有 IP 地址>/info.php.
注意:如果页面加载失败,请确保与实例关联的安全组允许端口 80 上的入站流量。
如果您确认其工作正常,可以运行以下命令来将 Apache 和 php-fpm 设置为在系统启动时启动。
sudo systemctl enable httpd.service
sudo systemctl enable rh-php56-php-fpm.service