Apache服务器 403 Forbidden的几种错误原因小结!

403 Forbidden错误原因详解

  1. 403 - Forbidden(禁止访问),服务器拒绝请求   
  2. - forbidden request (matches a deny filter) => HTTP 403   
  3. - The request was a legal request, but the server is refusing to respond to it.
复制代码


原因1 apache的配置文件没有对站点目录许可

  apache配置文件中没有对站点目录的权限许可配置,这通常是在初始化安装apahce后,更改了默认的apache站点目录导致。


  解决办法可能是:通过给主配置文件增加类似<Directory "/application/apache2.2.31/htdocs"></Directory>标签实现对指定目录的权限控制
典型如下(对/var/www目录下的文件允许访问):

  1. <Directory "/var/www">   
  2.     Options -Indexes FollowSymLinks # 为了服务器的安全 Indexes参数一般要取消   
  3.     AllowOverride None   
  4.     Order allow,deny # 允许未被明确拒绝的   
  5.     Allow from all
  6. </Directory>
复制代码


原因2 站点目录下没有首页文件,而apache 的配置又禁止了目录的浏览

  站点目录下没有首页文件 (index.php、index.html等默认文件),而apache的配置又禁止了目录浏览(#Indexes参数:访问目录时,另外如果不存在默 认首页则展示站点列表,该行建议改成 Options None),这时也会提示403错误。


  解决办法:在站点目录添加默认首页文件或者将配置文件中Options Index增加上。


原因3 deny from all 禁用了所有来访者访问

  1. <Directory "/var/www">   
  2. Options -Indexes FollowSymLinks # 为了服务器的安全 Indexes参数一般要取消   
  3. AllowOverride None   
  4. Order allow,deny # 允许未被明确拒绝的   
  5. Deny from all
  6. </Directory>
复制代码


解决办法:
参考原因2解决方法配置</Directory> 参数

如果系统为Linux系统,站点可能存在目录权限问题

      站点目录需要apache的用户有访问权限,否则就会报403错误(一般web站点目录权限给755,站点文件权限给644,上传程序通过另外的上传服务器提供文件上传)

原文地址:https://www.cnblogs.com/yuanzai12345/p/5964851.html