设置后怎样在域上修复“禁止 – 您无权访问/在此服务器上” Apache?

Apache 是一种网络服务器软件,世界上几乎 67% 的网络服务器都在使用它。 该软件由以下公司开发和分发 Apache 软件分发。 它是开源的并且免费提供。 Apache 快速、安全和可靠,这也是它受欢迎的原因之一。 然而,最近很多用户已经体验到“禁止 – 您无权访问 / 在此服务器上” 尝试设置时出错 Apache 为他们的领域。

“禁止 – 您无权访问此服务器上的 / ”错误

什么导致“禁止 – 您无权访问/在此服务器上”错误?

在收到来自多个用户的大量报告后,我们决定调查该问题并设计一套解决方案来彻底解决它。 此外,我们调查了触发它的原因并将其列出如下。

  • 不正确的全局目录设置: 全局目录的设置可能没有正确配置,导致站点没有足够的指令。 如果该站点没有正确的指令,则可能会触发此错误。
  • 不正确的权限: Apache 需要对目录根文件夹的权限才能正常运行,如果未授予这些权限,则可能会触发错误。
  • 没有用户名:在“httpd.conf”中,在某些情况下必须输入用户的实际用户名才能消除错误。 这对某些人有效,而对某些人则无效。

现在您对问题的性质有了基本的了解,我们将继续寻找解决方案。 确保按照它们呈现的特定顺序来实现它们。

解决方案 1:更改全局目录设置

某些设置需要正确配置才能解决此问题。 因此,在这一步中,我们将在位于“httpd.会议“ 或者 ”httpd虚拟主机.会议” 取决于用户。 为了那个原因:

  1. 一旦你在“httpd.会议“ 或者 “httpd-vhosts.conf”, 寻找 目录 设置,它们应该类似于下面提到的代码。
    <Directory />
    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Allow from all
    </Directory>
    “httpd.conf”文件

    笔记: 代码可能有“否定 全部”代替“允许 全部“。 重要的是你 调整 它到“允许来自 全部“ 要么 ”要求 全部 的确”如下所示。

  2. 确保你 添加 这 ”选项索引 FollowSymLinks 包括 ExecCGI” 行,使其看起来类似于以下代码。
    <Directory />
    #Options FollowSymLinks
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride All
    Order deny,allow
    Allow from all
    </Directory>
  3. 查看 看看问题是否仍然存在。
  4. 如果问题未解决,请通过删除“允许 全部“ 到 ”要求 全部 的确“。
  5. 查看 看看问题是否仍然存在

解决方案 2:更改权限

当用户链接时 Apache 他们向他们的域提供软件权限,以便能够读取和写入文件。 正确提供这些权限很重要。 下面我们将指出提供权限的正确方法。

  1. 传统上,用户提供 权限 通过以下方式。
    chgrp -R www-data /username/home/Dropbox/myamazingsite/
    chmod -R 2750 /username/home/Dropbox/myamazingsite/
  2. 这些命令是错误的,需要替换为
    chgrp -R www-data /username
    chmod -R 2750 /username
  3. 另外,请记住,您使用的是正确级别的“修改“,使用一个为用户提供读取权限的,例如“修改 755“。
  4. 尝试建议后检查问题是否仍然存在。

解决方案 3:添加用户名

在里面 ”httpd.会议“,请务必添加您的 准确的用户名 而不是单词 “用户” 要么 “团体”。 在某些情况下,添加用户名可以解决问题。

设置后怎样在域上修复“禁止 - 您无权访问/在此服务器上” Apache? 1将用户名添加到指定的文件