php 7.1
Apache 2.4 + mod_proxy_fcgi
Windows 10
我正在尝试在Windows上设置php-fpm + apache,使用mod_proxy_fcgi但不断收到错误。任何人都可以帮我配置apache。
我得到了php-fpm runnig,并且证实它实际上使用了nginx,所以php应该不是问题。
PHP-fpm正在端口9123上运行。
这是我的vhost配置:
<VirtualHost *:80>
ServerName localhost
DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
<FilesMatch "\.php$">
SetHandler proxy:fcgi://127.0.0.1:9123
</FilesMatch>
</Directory>
</VirtualHost>
这是错误:
代理错误
您的浏览器发送了此服务器无法理解的请求。该 代理服务器无法处理请求GET /index.php /.
原因:无法解析URI: FCGI://127.0.0.1:9123C:/Apache24/htdocs/index.php*
有谁知道如何修复它?
答案 0 :(得分:1)
我正在处理同样的问题而且我找到了根本原因:我们很可能都在关注this wiki.apache.org guide。在指南中有一些拼写错误。导致问题的原因是SetHandler
之后缺少斜线。这是适合我的配置:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
<FilesMatch "\.php$">
<If "-f %{REQUEST_FILENAME}">
SetHandler "proxy:fcgi://localhost:9123/"
</If>
</FilesMatch>
答案 1 :(得分:0)
你试过把:
<FilesMatch "\.php$">
SetHandler proxy:fcgi://127.0.0.1:9123
</FilesMatch>
目录外? IE浏览器。如果你把这部分放在docroot指令和目录指令之间会发生什么?
此致 埃里克
答案 2 :(得分:0)
嗨尝试类似的事情:
<FilesMatch "^/CHANGE_ME/.*\.php(/.*)?$">
SetHandler proxy:fcgi://127.0.0.1:9123
</FilesMatch>