介绍
当 Web 服务器拒绝访问特定网页或 Web 内容时,它会显示403 Forbidden错误。不同的 Web 服务器报告 403 Forbidden 错误的不同变体。
在本文中,你将了解什么是 403 Forbidden以及如何修复如何修复403 Forbidden错误,包括详细的403 Forbidden错误解决办法。
什么是 403 Forbidden错误
当 Web 服务器拒绝尝试通过 Web 浏览器访问网页的用户访问网页时,会发生 403 Forbidden 错误。名称“ 403 错误”源自 Web 服务器用来描述该类型错误的 HTTP 状态代码。
该错误有多种变体以及 Web 服务器拒绝访问的多种原因。以下部分介绍了错误显示的不同方式及其原因。
常见的 403 错误消息
与其他错误一样,网站管理员可以自定义 403 错误的显示方式。其内容还取决于所使用的 Web 服务器。这就是为什么在不同的网站上有许多不同的 403 页面的原因。
一些常见的 403 错误消息是:
- 403 Forbidden
- HTTP 403
- Forbidden
- HTTP Error 403 – Forbidden
- HTTP Error 403.14 – Forbidden
- Error 403
- Forbidden: You don’t have permission to access [directory] on this server (禁止:你无权访问此服务器上的 [目录])
- Error 403 – Forbidden
- 403 Forbidden Error
- 403 Error
上图显示了Nginx Web 服务器提供的 403 Forbidden 错误示例。
注意: WordPress 中最常见的错误之一是500 Internal Server Error。阅读我们的教程以了解如何修复它。
什么导致403 Forbidden错误
403 Forbidden 错误通常是由于访问配置错误造成的。错误配置涉及文件或目录的不正确读取、写入或执行权限设置。
403 Forbidden 错误的可能原因是:
- 一个空的网站目录。如果没有index.php或index.html页面,则显示 403 错误。
- 缺少索引页。如果主页名称不是index.html或index.php ,则可能会出现 403 错误。
- 权限/所有权错误。不正确的权限设置或所有权会导致 403 错误。
- .htaccess 文件设置不正确。.htaccess 文件包含重要的网站配置设置,它可能已损坏。
- 恶意软件感染。如果你的文件感染了恶意软件,它会不断破坏 .htaccess 文件。
- 缓存过时的网页。如果页面链接已更新(现在与缓存版本不同),则会出现 403 错误。
- 错误的插件。WordPress 插件配置不当或其不兼容可能会触发 403 错误。
以下部分涉及修复 403 Forbidden 错误的不同方法。
如何修复403 Forbidden错误(网站管理员提示)
根据你是网站访问者还是网站管理员,你可以采取多种措施来修复 403 Forbidden 错误。
注意:如果你在 Apache Web 服务器上托管,请阅读我们的教程,了解如何修复 Apache 服务器上的 403 Forbidden 错误。
以下针对 403 Forbidden 错误的修复是网站站长的资源:
检查网站目录
修复403 Forbidden错误的方法:空的网站目录可能会导致 403 错误。确保内容位于服务器上的正确目录中。
根据你使用的服务器,你的内容的正确目录是:
- 对于 Nginx:/var/www/vhosts/domain.com/httpdocs/
- 对于 Apache:/home/username/public_html/
如果没有这样的目录,请创建一个。
添加索引页
网站主页默认是index.html或index.php。如果你的网站上没有这样的页面,访问者可能会遇到 403 错误。通过将索引页上传到你的httpdocs或public_html目录来解决此问题。
如果你已经有一个非index的主页,你可以重命名它或在你的.htaccess文件中设置一个指向该主页的重定向。
警告:编辑.htaccess文件时要小心,因为它包含服务器配置说明并影响 Web 服务器的行为。作为预防措施,该文件通常是隐藏的,但你可以通过选中Show Hidden Files选项在public_html目录中找到它。
要重定向到你的主页,请按照以下步骤操作:
1. 登录 cPanel 并导航到你的public_html目录。
注意:你还可以使用 FTP 客户端而不是 cPanel 在本地下载和编辑.htaccess文件。
2. 右键单击.htaccess 文件并从下拉菜单中选择编辑。
3.通过插入以下代码片段,将index.php或index.html文件重定向到你现有的主页:
redirect /index.html /homepage.html
替换homepage.html
为你页面的实际名称。
检查文件和目录权限
修复403 Forbidden错误的方法:你网站上的每个文件和目录都具有控制对这些文件和目录的访问的权限。不正确的文件或目录权限可能会导致 403 Forbidden 错误。权限指定谁对相关文件或目录具有读或写访问权限。
权限用数值表示。一般的做法是使用:
- 755用于目录
- 644用于静态内容
- 700用于动态内容
注意: Linux 文件权限可以包括数字、字母或单词,以及说明文件已分配给谁的条目 - 所有者、组或两者。
你可以使用 chmod 命令递归地更改文件权限。如果你更喜欢 GUI,请使用 FTP 客户端更改文件或目录权限。
创建一个新的 .htaccess 文件
403 Forbidden错误解决办法:403 错误可能是不正确的.htaccess文件配置的结果。.htaccess 文件控制高级网站配置。
请按照以下步骤检查 .htaccess 文件是否是 403 错误的原因:
1.通过你的文件管理软件(例如,cPanel)或通过 sFTP 或 FTP 客户端查找.htaccess文件。
2. 右键单击.htaccess 文件并选择 下载 以创建本地备份。
3. 接下来,单击删除以删除文件。
4. 访问你的网站。如果 403 错误不再出现,则表示.htaccess文件已损坏。
5. 现在你需要生成一个新的.htaccess文件。登录到你的仪表板,然后单击设置 > 固定链接。
6. 不要做任何改变。只需单击“保存更改”按钮即可创建新的.htaccess文件。
访问你的网站以检查错误是否已修复。
启用目录浏览
如果网站在你尝试浏览目录时显示 403 错误,你可能需要在你的网络服务器软件中启用目录浏览。你可以在配置文件中打开目录浏览。如果你对自己编辑配置文件没有信心,请向网站管理员或你的托管服务提供商寻求帮助。
以下示例显示了如何在不同的 Web 服务器中启用目录浏览:
- IIS Express
1. 打开项目的Web.config文件。
2. 在 中添加以下标签<system.webServer>
:
<directoryBrowse enabled="true" />
<modules runAllManagedModulesForAllRequests="true" />
- nginx
将配置文件中的autoindex
值更改为on
:
以下是与配置文件的一个示例on
为值autoindex
。
server {
listen 80;
server_name phoenixnap.com www.phoenixnap.com;
access_log /var/...........................;
root /path/to/root;
location / { index index.php index.html index.htm; }
location /somedir { autoindex on; }
}
阿帕奇
你必须在站点的.conf文件(在 Linux 上的/etc/apache2/sites-available 中找到)中指定DirectoryIndex指令。
在Options
指令中打开目录浏览。以下是打开目录浏览的.conf文件示例:
<Directory /usr/local/apache2/htdocs/listme>
Options +Indexes
</Directory>
联系托管公司
403 Forbidden 错误的原因可能与托管公司有关,而不是与你有关。如果其他一切都无法消除错误,请与你的托管公司联系,让他们检查可能导致问题的原因。
禁用 WordPress 插件
修复403 Forbidden错误的方法:有时,错误或不兼容的插件会导致 403 Forbidden错误。你可以尝试通过禁用所有插件来检查错误是否消失来修复错误。
请按照以下步骤禁用所有插件:
1. 登录 WP Admin 并导航到Plugins > Installed Plugins。
2. 选择所有插件,从下拉菜单中选择停用,然后单击应用。
3. 尝试访问你的网站。如果没有 403 forbidden 错误,则表示原因是插件之一。
4. 现在一次启用一个插件以确定哪个插件导致了 403 错误。当你找到问题的根源时,请更新或删除插件或安装替代插件来解决问题。
检查 A 记录
403 Forbidden错误解决办法:403 Forbidden 错误的原因之一可能是域名指向错误的 IP 地址,你无权查看内容。当迁移网站的A记录仍然指向旧IP地址时,就会发生这种情况。
请按照以下步骤检查域 A 记录是否指向正确的 IP 地址:
1. 登录 cPanel。
2. 在域部分,单击DNS 区域编辑器。
3. 在 DNS 记录列表中,找到类型列中带有A标签的记录。
注意:查看最佳 DNS 安全实践以保护你的业务。要了解如何诊断连接问题,请查看我们关于DNS 故障排除的帖子。
4.检查Record 栏中的A记录IP地址 是否正确。如果错误,请单击“编辑”进行更改。
5. 单击更新完成。
重新访问网站以查看问题是否已解决。
扫描恶意软件
在你的 Web 服务器上安装恶意软件可能会导致 403 Forbidden 错误。恶意软件可以不断地将不需要的行注入.htaccess文件,这样即使你生成新的 .htaccess 文件,错误仍然存在。
使用安全插件扫描你的 Web 服务器中是否存在恶意软件,如果发现则将其删除。大多数插件还在检测受恶意软件感染的文件时提供操作,例如删除或恢复受感染的文件。
一些最好的 WordPress 安全插件是 Sucuri、Wordfence、Defender 等。
如何修复403 Forbidden错误(网站访问者提示)
如果你是遇到 403 错误的站点访问者,下面列出了你可以尝试解决该问题的方法。
检查网址
一个错误的URL是403 Forbidden错误的一个常见原因。确保你尝试访问的是实际网页而不是目录。
许多网站不允许访问者浏览目录,因此如果你尝试访问目录,你可能会收到 403 Forbidden 错误。
清除历史记录/缓存
你的浏览器会存储缓存的网页,以便你下次访问时更快地加载它们。有时网站链接已更新,使实际链接与缓存版本不同。加载缓存版本会导致 403 错误。
403 Forbidden错误解决办法:你浏览器上存储的 cookie 也可能导致 403 错误。如果 cookie 无效或损坏,它们可能会导致服务器身份验证不正确。清除浏览器缓存 和 cookie应该可以解决此问题。
注意:清除浏览器缓存和 cookie 意味着下次加载网页时,浏览器会再次请求所有站点文件,从而使其加载速度变慢。清除 cookie 也会让你从所有登录的网站上注销。
请按照以下步骤清除 Google Chrome 上的缓存和 cookie:
- 单击右上角的三点按钮并选择 Settings。
2. 找到 隐私和安全 部分,然后单击 清除浏览数据。
- 在下拉菜单中,选择数据删除时间范围。
- 检查 Cookie 和其他站点数据 以及 缓存的图像和文件 选项,然后单击清除数据。
尝试重新加载站点以查看问题是否仍然存在。
登录
有时会出现 403 Forbidden 错误代码,因为你需要登录网站才能访问页面。如果可能,请使用你的凭据登录以访问内容。
注意:虽然在访问内容需要特殊权限时通常会显示 401 错误,但有时会显示 403 Forbidden 错误。
重新加载页面
修复403 Forbidden错误的方法:有时,重新加载页面是绕过 403 Forbidden 错误的诀窍。每个浏览器在地址栏附近都有自己的重新加载按钮。如果你更喜欢使用键盘,请在 Windows 和 Linux 上按Ctrl+F5或在 Mac上按Cmd+Shift+R以重新加载页面。
稍后再试
如果你不是唯一被拒绝访问该网站的人,那么问题通常出在主机上。稍后重新访问该站点,看看问题是否已解决。
联系你的 ISP
如果你无法解决网站上的 403 错误,但它适用于其他人,请联系你的互联网服务提供商 (ISP)。
你的 IP 地址可能被添加到阻止列表中,这会导致 403 Forbidden错误。在这种情况下,你的 ISP 无法帮助你,访问该网站的唯一方法是使用 V**P**N。
结论
高网站可用性提供最佳用户体验并显示可靠性。这就是网站所有者试图让他们的网站始终可用并投资网站维护服务的原因。
如果你想留住访问者,预防或快速解决 HTTP 错误至关重要。阅读本指南后,你应该知道如何修复403 Forbidden错误解决办法并保持你的业务正常运行。