Apache 2.2 PHP-FPM,浏览器中禁止接收403的PHP文件
我正在尝试将php从fcgid切换到fpm。我已经用谷歌搜索到了一个很好的结局,虽然有些问题看起来是一样的,但我仍然无法解决它 我正在运行CentOS 6.5、Apache 2.2和PHP5.4。我安装了mod_fastcgi和php-fpm。PHP在shell中工作,但我通过浏览器收到403个错误。显然,Apache没有正确地传递请求。安装后,我做了以下更改: 将/etc/httpd/conf.d/fcgid.conf重命名为fcgid.conf.disabled 将以下内容添加到/etc/httpd/conf.d/fastcgi.confApache 2.2 PHP-FPM,浏览器中禁止接收403的PHP文件,apache,php,centos6,http-status-code-403,mod-fastcgi,Apache,Php,Centos6,Http Status Code 403,Mod Fastcgi,我正在尝试将php从fcgid切换到fpm。我已经用谷歌搜索到了一个很好的结局,虽然有些问题看起来是一样的,但我仍然无法解决它 我正在运行CentOS 6.5、Apache 2.2和PHP5.4。我安装了mod_fastcgi和php-fpm。PHP在shell中工作,但我通过浏览器收到403个错误。显然,Apache没有正确地传递请求。安装后,我做了以下更改: 将/etc/httpd/conf.d/fcgid.conf重命名为fcgid.conf.disabled 将以下内容添加到/etc/h
<IfModule mod_fastcgi.c>
DirectoryIndex index.html index.shtml index.cgi index.php
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass$
<Directory "/usr/lib/cgi-bin">
Order allow,deny
<Files "php5.fastcgi">
Order deny,allow
</Files>
</Directory>
</IfModule>
<IfModule mod_fastcgi.c>
DirectoryIndex index.php index.html index.shtml index.cgi
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /tmp/php5-fpm.sock -pass-header Authorization
# For monitoring status with e.g. Munin
<LocationMatch "/(ping|status)">
SetHandler php5-fcgi-virt
Action php5-fcgi-virt /php5-fcgi virtual
</LocationMatch>
DirectoryIndex.html index.shtml index.cgi index.php
AddHandler php5 fcgi.php
行动php5 fcgi/php5 fcgi
别名/php5 fcgi/usr/lib/cgi-bin/php5 fcgi
FastCgiExternalServer/usr/lib/cgi-bin/php5-fcgi-host 127.0.0.1:9000-pass$
命令允许,拒绝
命令拒绝,允许
我还创建了/usr/lib/cgi-bin目录,并将其保存到apache.apache(不确定是否有必要)
我没有在任何虚拟主机声明中添加任何内容。所有其他文件都可以解析,而不是PHP
非常感谢您的帮助。谢谢。我能够解决这个问题 /etc/php-fpm.d/www.conf
listen = /tmp/php5-fpm.sock
重新启动php fpm,然后将chown'd/tmp/php5-fpm.sock转换为apache.apache
/etc/httpd/conf.d/fastcgi.conf
<IfModule mod_fastcgi.c>
DirectoryIndex index.html index.shtml index.cgi index.php
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass$
<Directory "/usr/lib/cgi-bin">
Order allow,deny
<Files "php5.fastcgi">
Order deny,allow
</Files>
</Directory>
</IfModule>
<IfModule mod_fastcgi.c>
DirectoryIndex index.php index.html index.shtml index.cgi
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /tmp/php5-fpm.sock -pass-header Authorization
# For monitoring status with e.g. Munin
<LocationMatch "/(ping|status)">
SetHandler php5-fcgi-virt
Action php5-fcgi-virt /php5-fcgi virtual
</LocationMatch>
DirectoryIndex.php index.html index.shtml index.cgi
AddHandler php5 fcgi.php
行动php5 fcgi/php5 fcgi
别名/php5 fcgi/usr/lib/cgi-bin/php5 fcgi
FastCgiExternalServer/usr/lib/cgi-bin/php5 fcgi-socket/tmp/php5-fpm.sock-传递头授权
#用于监控状态,例如Munin
SetHandler php5 fcgi病毒
动作php5 fcgi virt/php5 fcgi虚拟
最后,将我的浏览器指向/info.php和服务器API:FPM/FastCGI 这与apache中的目录级权限有关。在授予web服务器访问web服务器的文件系统时,可能需要设置目录权限 这是您可能需要添加到httpd.conf文件中的指令
<Directory "/var/www/html">
AllowOverride None
</Directory>
不允许超限
然后重新启动apache服务,这将解决您的问题