
1 前言
一个问题,一篇文章,一出故事。
本章将完成Oracle Linux 9.x的Apache+PHP环境的安装和配置。
以往Apache与PHP部署在同一台主机,跟以往不同的是当前Apache与PHP服务分离,本章有助于你理解他们之间的工作模式。
2 最佳实践
2.1 环境配置
2.1.1 安装php-fpm环境
OS = Oracle Linux 9.x x86_64
Host Name = phpfpm01.cmdschool.org
IP Address = 10.168.0.130
2.1.2 安装Apache httpd环境
OS = Oracle Linux 9.x x86_64
Host Name = www.cmdschool.org
IP Address = 10.168.0.129
2.1 配置php-fpm环境
In phpfpm01,
2.1.1 修改配置文件
vim /etc/php-fpm.d/www.conf
修改如下参数,
listen = 0.0.0.0:9000 listen.allowed_clients = 127.0.0.1,10.168.0.129
2.1.2 重新启动服务使配置生效
systemctl restart php-fpm
2.1.3 创建测试代码
mkdir -p /var/www/www.cmdschool.org/ chown apache:apache -R /var/www/www.cmdschool.org/ chmod 775 -R /var/www/www.cmdschool.org/ echo '<?php phpinfo(); ?>' | tee /var/www/www.cmdschool.org/phpinfo.php
特别提醒:请看清楚上面的PHP代码应该部署在那台主机
2.2 配置Apache httpd环境
In www
2.2.1 修改配置指向PHP网关
vim /etc/httpd/conf.d/www.cmdschool.org.conf
加入如下配置,
<VirtualHost *:443> #... ProxyFCGIBackendType GENERIC <FilesMatch \.php$> SetHandler "proxy:fcgi://10.168.0.130:9000" </FilesMatch> </VirtualHost>
2.2.2 重启服务使配置生效
systemctl restart httpd
2.3 测试PHP服务的访问
2.3.1 设置名称解析
echo '10.168.0.129 www.cmdschool.org' >> /etc/hosts
2.3.2 测试服务访问
https://www.cmdschool.org/phpinfo.php
参阅文档
========================
模块mod_proxy_fcgi的使用
————————-
https://httpd.apache.org/docs/current/mod/mod_proxy_fcgi.html
官方文档
—————
https://httpd.apache.org/docs/2.4/
PHP内核参数
—————
https://www.php.net/manual/zh/ini.core.php
没有评论