摘要:和标志要匹配的路径的开始和结束括号里的内容可以用来表示,以方便后面引用它。通过来转发的代理,使用协议,转到监听的端口。非常重要必须与虚拟主机的路径匹配,且必须是对应文件在操作系统中的绝对路径。
原文地址: apache 与 php-fpm 几种处理方式
目录1.SetHandler
2.ProxyPassMatch
3.ProxyPass
在apache配置文件只部署一次
需要Apache 2.4.9以上才行
php-fpm配置
listen = 127.0.0.1:9000
httpd配置
setHandler "proxy:fcgi://127.0.0.1:9000"
php-fpm配置
listen = /var/run/php-fpm/php-fpm.sock
httpd配置
SetHandler:unix:///var/run/php-fpm/php-fpm.sock|fcgi://php-fpm SetHandler "proxy:unix:/var/run/php-fpm/php-fpm.sock|fcgi://localhost" # Apache 2.4.10设置
需要在每个 "VirtualHost" 里面加入
ProxyPassMatch ^/(.*.php(/.*)?)$ fcgi://127.0.0.1:9000/path/to/your/documentroot/$1 DirectoryIndex /index.php
ProxyPassMatch
只有满足特定正则模式的内容才会匹配并执行此规则,这里的模式是,
^/(..php(/.)?)$
从网站(虚拟主机
^ (caret) 和 $ (dollar)
标志要匹配的路径的开始和结束
( )
括号里的内容可以用 $1 来表示,以方便后面引用它。
fcgi://127.0.0.1:9000
通过 mod_proxy_fcgi 来转发的代理,使用 fastCGI 协议,转到 PHP-FPM 监听的端口。
改变 IP 地址和/或端口号就可以要转到的不同的 pool。用这个可以实现服务器分流、均衡等。
/path/to/your/documentroot/
非常重要!必须与虚拟主机的路径匹配,且必须是对应 php 文件在操作系统中的绝对路径。否则会找不到文件(PHP Script File)。这也是 URL 地址重写的目的所在:将 URL 地址转换成 fcgi://127.0.0.1:9000 后面紧跟着的 php 文件绝对路径。
可以从原始请求扩展成整个请求路径的变量,这里指代前面外围 ( ) 里面匹配的那个路径(uri)
我本机docker容器 httpd 和 php-fpm配置
我的php-fpm在138.38.38.110 上,配置将有所不同
ServerAdmin shenyi@com.cn DocumentRoot "/usr/local/apache2/htdocs" ServerName localhost Options None Require all granted ProxyRequests Off ProxyPassMatch ^/(.*.php)$ fcgi://138.38.38.110:9000/var/www/htm/$1
关于docker-compose 安装配置,看我docker compose 安装配置nginx 反向代理 httpd php-fpm
跟ProxyPassMatch 类似 ,需要在每个 VirtualHost 中分别设置
ProxyPass fcgi://127.0.0.1:9000/path/to/webroot/ ProxyErrorOverride on
最后感谢 http://cnzhx.net/blog/apache-...
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/35968.html
摘要:和标志要匹配的路径的开始和结束括号里的内容可以用来表示,以方便后面引用它。通过来转发的代理,使用协议,转到监听的端口。非常重要必须与虚拟主机的路径匹配,且必须是对应文件在操作系统中的绝对路径。 原文地址: apache 与 php-fpm 几种处理方式 目录 1.SetHandler 2.ProxyPassMatch 3.ProxyPass 1.SetHandler 在apach...
摘要:话说当下一共有种运行模式,分别是和模块模式。使用,全称进程管理器进行管理。工作原理启动时载入进程管理器进程管理器自身初始化,启动多个解释器进程并等待来自的连接当客户端请求到达时,进程管理器选择并连接到一个解释器。 我们知道 workerman 程序需要在php-cli模式下运行,也就是命令行模式,这块我们有必要了解一下。 话说PHP当下一共有4种运行模式,分别是CGI、FastCGI、...
摘要:报文语法格式报文报文请求流程用户请求先到达内核空间的网络协议栈,内核空间通过服务所监听的套接字,可以将用户请求转发给用户空间的服务进程。作为独立的守护进程,侦听一个套接字,接收并响应来自前端程序的请求,即为客户端。 博文参考 http://www.178linux.com/51895 http://www.178linux.com/63734 http://www.178linux.c...
阅读 2866·2021-11-11 10:58
阅读 1919·2021-10-11 10:59
阅读 3488·2019-08-29 16:23
阅读 2324·2019-08-29 11:11
阅读 2784·2019-08-28 17:59
阅读 3837·2019-08-27 10:56
阅读 2049·2019-08-23 18:37
阅读 3111·2019-08-23 16:53