Haz*_*ass 417 apache2 apache2.4 server
尝试通过浏览器访问localhost时出现此错误.
AH01630: client denied by server configuration
Run Code Online (Sandbox Code Playgroud)
我使用以下方法检查了我的站点文件
sudo chmod 777 -R *
Run Code Online (Sandbox Code Playgroud)
这是我的配置文件:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/user-name/www/myproject
<Directory />
Options FollowSymLinks
AllowOverride all
Allow from all
</Directory>
<Location />
Allow from all
Order Deny,Allow
</Location>
<Directory /home/user-name/www/myproject/>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride all
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride all
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
Run Code Online (Sandbox Code Playgroud)
Jay*_*lie 751
如果您使用的是Apache 2.4
您必须检查允许和拒绝规则
查看http://httpd.apache.org/docs/2.4/upgrading.html#access
在2.2中,使用指令Order,Allow,Deny和Satisfy完成了基于客户端主机名,IP地址和客户端请求的其他特征的访问控制.
在2.4中,使用新模块mod_authz_host以与其他授权检查相同的方式完成此类访问控制.
新指令是要求:
2.2配置:
Order allow,deny
Allow from all
Run Code Online (Sandbox Code Playgroud)
2.4配置:
Require all granted
Run Code Online (Sandbox Code Playgroud)
也不要忘记在这些更改后重启apache服务器(# service httpd restart)
val*_*505 297
对于所有目录Require all granted而不是写Allow from all

更新
如果以上不起作用,那么也删除以下提到的行:
订单允许,拒绝
Tim*_*Tim 33
仔细检查DocumentRoot路径是否正确.这可能会导致此错误.
小智 21
我做了一些ravisorg向OSX 10.10 Yosemite建议将Apache升级到版本2.4的更改.以下是添加到http.conf的更改.
<Directory />
AllowOverride none
Require all denied
</Directory>
<Directory /Volumes/Data/Data/USER/Sites/>
AllowOverride none
Require all granted
</Directory>
Run Code Online (Sandbox Code Playgroud)
RAC*_*RAC 11
这让我绝对坚持了一天半,但如果所有其他解决方案都尝试失败,我找到了解决办法.
这适用于macOS.
那时我立刻停止了403错误,一切都按预期开始工作.奇怪的是我甚至没有重启apache它只是工作,我想当我去我的本地主机时它重新启动,老实说我不知道但我想问题是Apache在使用apachectl restart时实际上没有重启,或者停止或开始.希望这有助于某人.
小智 11
对我来说,所有建议的解决方案都不起作用。这会有所帮助,如果您使用 cgi、fastcig 或 fpm 作为代理,则必须在虚拟主机中添加一个位置以避免此问题。这允许 404 成为直通代理。
<Location />
require all granted
</Location>
Run Code Online (Sandbox Code Playgroud)
就我而言,
我正在使用 macOS Mojave (Apache/2.4.34)。/etc/apache2/extra/httpd-vhosts.conf 文件中的虚拟主机设置存在问题。添加所需的目录标签后,我的问题就消失了。
要求全部授予
希望完整的虚拟主机设置结构能够帮助您。
<VirtualHost *:80>
DocumentRoot "/Users/vagabond/Sites/MainProjectFolderName/public/"
ServerName project.loc
<Directory /Users/vagabond/Sites/MainProjectFolderName/public/>
Require all granted
</Directory>
ErrorLog "/Users/vagabond/Sites/logs/MainProjectFolderName.loc-error_log"
CustomLog "/Users/vagabond/Sites/logs/MainProjectFolderName.loc-access_log" common
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
您只需将 MainProjectFolderName 替换为您的确切 ProjectFolderName 即可。
| 归档时间: |
|
| 查看次数: |
607088 次 |
| 最近记录: |