gpt4 book ai didi

php - Apache 权限被拒绝

转载 作者:IT王子 更新时间:2023-10-29 00:16:48 26 4
gpt4 key购买 nike

我刚刚安装了一个新的 Apache 2.4.2,在 Windows 上构建了 Php fast cgi。

然后我修改了 httpd.conf 添加了以下内容:

LoadModule fcgid_module modules/mod_fcgid.so  
FcgidInitialEnv PHPRC "C:/SITE/PHP"
AddHandler fcgid-script .php
FcgidWrapper "C:/SITE/PHP/php-cgi.exe" .php

DocumentRoot "C:/SITE/localhost/www"
<Directory "C:/SITE/localhost/www">
Order allow,deny
Allow from all
</Directory>

但是,当我尝试打开我的网站时,它显示:

Forbidden 您无权访问此服务器上的/。

任何想法可能是什么问题?

最佳答案

这是正确的方法:(感谢 DaveRandom)

<Directory "C:/SITE/localhost/www">
Options ExecCGI
AllowOverride all
Require all granted
</Directory>

Dave Random进一步解释:

After a little experimentation with this, I have discovered the nuance that makes this the correct answer, which is specific to Apache 2.3+. It seems that mod_authz_host directives take precedence over mod_access_compat directives, and this bubbles all the way up the directory tree. What this means is that if you are migrating from Apache 2.2 to Apache 2.4 and you use your 2.2 httpd.conf verbatim, it will work.

If, however, you perform a new install of 2.4 and base your config on the default 2.4 httpd.conf, Allow directives won't work, because the default top level section uses a Require all denied directive instead of Deny from all, and this takes precedence over any subsequent Allow directives higher up the tree. The long of the short of this is that if you are migrating your Order/Allow/Deny directives to their equivalent Requires, then you must chance all of them or you will find you get 403s you weren't expecting.

关于php - Apache 权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11992466/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com