网站搜索

如何修复 Linux 中的 Apache 403 禁止错误


Apache Web 服务器因其稳定性和可靠性而成为最流行和最广泛使用的开源 Web 服务器之一。网络服务器拥有巨大的市场,尤其是网络托管平台。

尽管如此,在设置网站后,您的浏览器可能会收到“禁止 - 您无权访问/在此服务器上”错误。这是一个很常见的错误,很多用户在测试他们的网站时都遇到过这个错误。那么这个错误是什么?

什么是 403 禁止错误?

Apache 的“禁止错误”也称为 403 禁止错误,是当您尝试访问受限制或禁止的网站时在网页上显示的错误。

它是一个标准化的 HTTP 状态代码,表示 Web 服务器理解该请求,但由于权限问题无法授权访问。

它通常会出现在浏览器上,如图所示。

此外,该错误可能会以多种方式在浏览器上表现出来,如下所示:

  • HTTP 错误 403 – 禁止
  • 禁止:您无权访问此服务器上的[目录]
  • 403 禁忌
  • 访问被拒绝 您无权访问
  • 403 禁止的请求被行政规则禁止

403禁止错误是什么原因造成的?

出现“403禁止错误”的主要原因如下:

1. 文件/目录权限不正确

由于 webroot 目录上的文件/文件夹权限不正确,可能会触发此错误。如果未调整默认文件权限以授予用户访问网站文件的权限,则 Web 浏览器上出现此错误的可能性很高。

2. Apache配置文件配置错误

此错误也可能归因于 Apache 配置文件之一的配置错误。这可能是配置文件中包含的参数不正确或缺少指令。

3..htaccess文件配置错误

遇到此 HTTP 响应代码的另一个常见原因是 .htaccess 文件损坏或配置不正确。发生这种情况时,通常会在修改 .htaccess 文件后出现 403 Forbidden 错误。

通常,用户可以通过生成新的 .htaccess 文件或纠正其配置来解决此问题。

修复 Apache“403 禁止错误”

如果您遇到此错误,可以采取以下几个步骤来解决此问题。

1、调整Webroot目录的文件权限和归属

已知不正确的文件权限和目录所有权会限制对网站文件的访问。因此,首先,请确保将文件权限递归分配给 webroot 目录,如图所示。

webroot 目录应始终具有EXECUTE 权限,index.html 文件应具有READ 权限。

cd /path/to/webroot/directory 
sudo find . -type d -exec chmod 755 {} \;
sudo find . -type f -exec chmod 644 {} \;

上面的find命令用于查找当前目录(.)内的所有目录(文件夹)和文件,并将其权限设置为755(目录)和644 (文件)。

此外,使用 chown 命令将文件和目录的所有权调整为特定用户 (howtoing) 和组 www-dataapache,如下所示。

sudo chown -R tecmint:apache .

最后,重新加载或重新启动 Apache 网络服务器以使更改生效。

sudo systemctl restart apache2
OR
sudo systemctl restart httpd

如果这不能解决问题,请继续执行下一步:

2.调整Apache主配置文件中的指令

如果您使用的是基于 Debian 的 Linux 或基于 RHEL 的发行版,请打开主 Apache 配置文件,通常名为 httpd.confapache2.conf

sudo nano /etc/httpd/httpd.conf       # For Apache on CentOS/Red Hat
sudo nano /etc/apache2/apache2.conf   # For Apache on Debian/Ubuntu

找到与您网站的 Web 文档根对应的 部分,并确保将 AllowOverride 指令设置为 "All" 。这允许 .htaccess 文件覆盖配置设置。

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

替换路径 /var/www/html 以匹配网站文档根目录的实际路径。

保存并退出,然后重新启动 Apache。

sudo systemctl restart httpd     # For Apache on CentOS/Red Hat
sudo systemctl restart apache2   # For Apache on Debian/Ubuntu

。修复 .htaccess 文件配置

如果您的 Web 目录中有 .htaccess 文件,请检查其配置。错误配置的配置设置或任何语法错误都可能阻止用户访问特定的 Web 内容。

注释掉行或暂时删除该文件,看看是否可以解决问题。

如果尝试所有这些步骤后您仍然收到错误,请检查虚拟主机文件的配置。

我们有关于如何配置 Apache 虚拟主机文件的详细文章:

解决“禁止 - 您无权访问/在此服务器上”错误涉及检查和调整文件权限、所有权和服务器配置。

我希望所提供的步骤能够帮助您清除 403 错误。