有一次在宝塔中不小心修改了网站的运行目录,一开始没有什么事情,但是!当我重启了 Apache 服务时,出现了403错误!我怀疑是 httpd.conf 被我不小心修改错了,但是网上的解决方案大部分和我说的是 http.conf 中 的选项出现了权限问题,需要将Require all denied 改成:Require all granted,才可以解决问题。直到我看到了这篇文章的最后一句话!www.linuxidc.com/Linux/2016-…
我才发现,可能我站点中的配置文件的运行目录出错了,我配置的运行目录下没有 index 文件,更换运行目录到一个有 index 文件的目录就OK了!
以下解决网站出现403错误的解决方案:
httpd.conf 作为 Apache 的默认配置文件,但是我们添加的每个站点都有一个自己配置文件 YOUR_WEB_SITE.conf(这个YOUR_WEB_SITE 可能是你的域名或者IP地址),这个配置文件可以补充或覆盖 httpd.conf 中的配置,我们现在确认 httpd.conf 中的权限没有问题的时候,让我们来看看 YOUR_WEB_SITE.conf 中的问题:
-
首先确定 选项中,
Require all
的选项权限有没有问题( Require all granted ); -
查看
DocumentRoot
是指定哪一个目录,再去看看指定的这个目录下有没有 index 文件 , -
- 如果没有,查看 httpd.conf 中的User 和 Group 选项,确保是 www 用户;
- 如果有,看下面的处理方式;
-
第二、修改运行目录最快的方式是打开宝塔面板 ,选择【网站】-> 【网站名】->【网站目录】->【运行目录】,选择 /
-
- 另外一种方式是:使用 vim 编辑器修改,将所有指定的目录修改回来
-
总结:出现 403 错误,请使用下面三种方式排查:
-
- 1、httpd.cnof 或 YOUR_WEB_SITE.conf 中 选项中确保 Require all granted ;
- 2、httpd.cpnf 或 YOUR_WEB_SITE.conf 中 User 和 Group 选项确保是 www;
- 3、YOUR_WEB_SITE.conf 中的
DocumentRoot
选项中,有没有 index 文件,没有要添加或者更换目录。