“ERR_TOO_MANY_REDIRECTS”错误是什么?
“ERR_TOO_MANY_REDIRECTS” 错误发生在浏览器无法加载网页的时候,因为它陷入了无限重定向循环。
这意味着请求的页面重定向到第二个页面,而第二个页面又重定向回原始页面,形成一个无休止的重定向循环。

最终,浏览器会放弃加载页面,并返回“重定向次数过多”的错误消息。
示例如下:
“重定向次数过多”错误消息示例

这种错误会带来两个主要问题:
- 影响用户体验:用户无法访问网页,会因此离开网站,导致流量损失,甚至可能造成业务收入损失。
- 阻碍搜索引擎爬虫:搜索引擎爬虫会陷入重定向循环,导致页面无法被正常爬取和索引。如果页面无法被索引,就无法在搜索引擎中获得排名,从而影响网站流量。
在本文中,我们会探讨“重定向次数过多”错误的原因及解决方法。
我们看看这个错误在不同的网页浏览器中是什么样的。
“重定向次数过多”错误在不同浏览器中的显示方式
不同的浏览器对 “重定向次数过多” 错误的显示方式有所不同,下面是各主流浏览器的概览:
Google Chrome(谷歌)
在 Google Chrome 中,ERR_TOO_MANY_REDIRECTS 错误会在屏幕中央显示以下消息:
“此页面无法正常运作。example.com 重定向次数过多。”
示例如下:
ERR_TOO_MANY_REDIRECTS 错误在 Chrome 中的显示

此外,Chrome 还提供了一个按钮,让用户可以尝试重新加载页面。
Firefox(火狐)
在 Firefox 中,可能会在屏幕中央看到如下消息:
“该页面没有正确重定向。”
示例如下:
ERR_TOO_MANY_REDIRECTS 错误在 Firefox 中的显示

Firefox 也会提供一个按钮,让用户尝试重新加载页面。
Safari
在 Safari 浏览器中,“重定向次数过多” 错误的提示信息是:
“Safari 无法打开此页面。”
示例如下:
ERR_TOO_MANY_REDIRECTS 错误在 Safari 中的显示

与 Chrome 和 Firefox 不同,Safari 不会 提供重新加载页面的按钮。
导致 ERR_TOO_MANY_REDIRECTS 错误的原因
ERR_TOO_MANY_REDIRECTS 错误发生在浏览器陷入无限重定向循环时,无法成功加载网页。
造成此问题的原因可能有下面几种:
浏览器 Cookies 和缓存问题
- 损坏的 Cookies 或旧的缓存可能导致重定向循环,从而引发 ERR_TOO_MANY_REDIRECTS 错误。
重定向配置错误
- 如果网站的重定向规则相互冲突,也可能导致此错误。
第三方服务和插件问题
- 配置错误的第三方服务(如 CDN(内容分发网络))或使用过时的插件可能会导致网站出现 “重定向次数过多” 的问题。
HTTPS 设置不正确
- SSL 证书 配置错误或 HTTPS 重定向规则异常也可能触发此错误。
.htaccess 文件配置错误
- .htaccess 文件(用于配置 Web 服务器设置)中的错误变量可能会导致网站出现 ERR_TOO_MANY_REDIRECTS 错误。
如何修复“重定向次数过多”错误:10 种解决方案
1. 清除浏览器缓存和 Cookies
在某些情况下,导致 “重定向次数过多” 错误的并不是网站本身,而是浏览器。
浏览器可能存储了损坏的 Cookies 或 旧版本的缓存,从而触发 ERR_TOO_MANY_REDIRECTS 错误。这种情况可能只影响到自己,而其他用户访问网站时不会遇到相同的问题。
要确认是否是浏览器缓存或 Cookies 引发的错误,可以尝试清除浏览器的缓存和 Cookies。下面是如何在 Chrome、Firefox 和 Safari 浏览器中清除数据的方法:
Google Chrome
点击浏览器右上角的三点菜单,然后选择 “设置”。Google Chrome “设置”

在设置页面,选择左侧栏的“隐私设置和安全性”,然后点击 “清除浏览数据”。“清除浏览数据” 选项

在弹出的窗口中,将时间范围设置为 “所有时间”。
- 可以取消勾选 “浏览历史记录”(可选),然后点击 “清除数据”。

Firefox
点击浏览器右上角的菜单按钮,然后在下拉菜单中选择 “设置”。Firefox “设置”

在设置页面,选择左侧栏的“隐私和安全”,然后向下滚动至 “Cookies 和网站数据” 部分,点击 “清除数据”。“隐私和安全”中的“清除数据”选项

在弹出的窗口中,点击 “清除” 即可。

Safari
在顶部菜单栏中点击 “Safari”,然后选择 “设置…”。Safari 菜单展开,选中“设置”选项

在设置窗口中,点击 “高级” 选项卡,勾选 “为 Web 开发者显示功能”(如果尚未勾选),然后关闭设置窗口。“高级”选项卡已选中,并勾选“为 Web 开发者显示功能”

注意:该选项可能会显示为 “在菜单栏中显示‘开发’菜单”。
现在,“开发” 选项应出现在顶部菜单栏中。点击 “开发”,然后选择 “清空缓存”。

2. 清除网站缓存
与浏览器缓存类似,存储在网站上的缓存也可能导致“重定向次数过多”的问题。
如果用的是 WordPress,下面两个插件可以帮助清除网站的缓存文件。
注意:如果无法访问 WordPress 仪表盘来使用插件解决问题,可以看下一步,尝试在服务器端清除缓存。
W3 Total Cache 插件
进入 WordPress 后台,导航到 “Performance”,然后点击 “Dashboard”。WordPress“仪表盘”

点击 “empty all caches”(清空所有缓存)。“empty all caches” 选项

刷新页面,检查错误是否消失。
WP Super Cache 插件
进入 WordPress 后台,导航到 “设置”,然后点击 “WP Super Cache”。“WP Super Cache” 选项

向下滚动,在 “删除缓存页面”(Delete Cached Pages)部分,点击 “删除缓存”(Delete Cache),以移除所有缓存文件。“删除缓存页面” 选项

刷新网页,看看错误是否已解决。
3. 清除服务器缓存
服务器上的缓存也可能是导致 “ERR_TOO_MANY_REDIRECTS” 错误的原因之一。
不同的主机提供商,清除服务器缓存的方法可能有所不同。
许多托管 WordPress 主机(如 WP Engine、Kinsta 和 SiteGround)在主机管理面板中提供了一键清除缓存的工具,方便用户操作。
如果是自托管的服务器,取决于你们用的控制面板。
4. 清除 CDN 缓存
内容分发网络(CDN)(如 Cloudflare、Fastly 和 Akamai)是一组分布在全球的服务器,可帮助网站更高效地向用户传输内容。
但如果 CDN 缓存了过时的内容或无限重定向循环,就可能导致浏览器不断循环跳转,从而引发 “重定向次数过多” 错误。
解决这个问题,需要清除代理服务器或 CDN 的缓存。
在 Cloudflare 清除缓存
登录 Cloudflare 仪表盘,进入域名管理页面。
在左侧菜单中,点击 “Caching”(缓存),然后选择 “Configuration”(配置)。Cloudflare 仪表盘:展开“缓存”菜单,选中“配置”选项。

点击 “Purge Everything”(清除所有缓存)按钮,即可删除所有缓存数据。

这样,CDN 就不会再存储错误的重定向信息,就有可能解决 ERR_TOO_MANY_REDIRECTS 问题。
大家也可以了解一下怎么在 WordPress 中设置 Cloudflare 免费的 CDN。
5. 检查现有的重定向规则
如果已经排除了缓存问题,但仍然遇到 “ERR_TOO_MANY_REDIRECTS” 错误,那么可能是服务器配置文件中的重写规则出现了问题。
服务器配置文件是什么?
服务器配置文件是控制 Web 服务器行为的设置文件,它们包含指令,用于管理请求处理、流量路由和安全策略。
要检查可能导致重定向循环的重写规则,查看以下文件(根据服务器类型):
- Apache 服务器:检查 .htaccess 文件
- Nginx 服务器:检查 nginx.conf 文件
- IIS 服务器:检查 Web.config 文件
.htaccess 文件中的 301 重定向(Apache 服务器)
注意:对 .htaccess 文件进行修改可能会导致网站出现各种问题。如果不确定如何操作,建议先咨询开发人员。
如果 .htaccess 文件配置错误,可能会导致无限重定向循环。例如:
RewriteEngine On
# Redirect everything to /example-page
RewriteRule ^(.*)$ /example-page [R=301,L]
# Redirect /example-page to /
RewriteRule ^example-page$ / [R=301,L]
在这种情况下:
- 用户访问
/example-page/
时,会被 301(永久重定向) 转向/example-page
(去掉了末尾的/
)。 - 但第二条规则又会把
/example-page
重新重定向到/example-page/
,从而形成无限循环。
如何修复 .htaccess 重定向循环?
要解决此问题,可以删除第二条规则,只保留第一个重定向规则,如下所示:
RewriteEngine On
# Redirect everything to /example-page
RewriteRule ^(.*)$ /example-page [R=301,L]
如何检查网站的重定向问题?
可以用 Semrush 的站点审计工具来检测网站是否存在重定向链或重定向循环问题。
在站点审计报告中,查找 “# redirect chains and loops”(重定向链和重定向循环)问题项,以定位可能的错误。
站点审计问题筛选“重定向”相关项。

6. 重置 .htaccess 文件
也可以重置 .htaccess 文件,确认它是否是导致重定向错误的原因。
注意:
- 由于 .htaccess 文件 直接影响网站的运行,修改不当可能会导致网站严重错误。
- 因此,只有在确保自己清楚操作步骤或有开发人员协助的情况下,才建议进行此操作。
如何将 .htaccess 文件重置为 WordPress 默认配置?
访问 WordPress 网站文件夹
- 进入主机服务商的控制面板或FTP。
- 找到 “文件管理器”(File Manager),并点击进入。
进入根目录文件夹
- 根目录通常命名为 “public_html”、“www”、“htdocs” 或 “httpdocs”。

示例:public_html 文件夹
备份 .htaccess 文件
- 在根目录中找到 .htaccess 文件。
- 右键点击 .htaccess 文件,然后选择 “下载”,以便后续需要时恢复。

示例:下载 .htaccess 文件
编辑 .htaccess 文件
- 右键点击 .htaccess 文件,然后选择 “编辑”。

示例:编辑 .htaccess 文件
检查并重置 .htaccess 规则
- 查看当前的 .htaccess 文件内容,确保它的规则符合 WordPress 默认配置。
- 如果规则不匹配,可以删除现有规则,然后粘贴以下默认规则:
# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
7. 检查 URL 设置
错误的 URL 设置 可能会导致 ERR_TOO_MANY_REDIRECTS 错误,特别是在 主机迁移 或 域名更改 过程中。
如何检查 URL 设置?
进入 WordPress 仪表盘,导航到 “设置”(Settings)。
找到 “WordPress 地址(URL)” 和 “站点地址(URL)”。示例:检查 URL 设置

确认这两个 URL 是否匹配。
- 如果不匹配,修改使其指向正确的域名。
注意:如果两个 URL 一致,但错误仍然存在,检查 URL 开头或结尾是否有多余的空格。
8. 禁用插件
有时候,WordPress 插件中的重定向规则可能与服务器级别的重定向发生冲突,导致 ERR_TOO_MANY_REDIRECTS 错误。
此外,过时的插件或损坏的数据也可能引发此问题。
如何测试插件是否导致重定向错误?
进入 WordPress 仪表盘,导航到 “插件” > “已安装的插件”(Plugins > Installed Plugins)。

选中所有插件
- 在左上角勾选“全选”复选框。

禁用所有插件
- 在 “批量操作”(Bulk Actions)下拉菜单中选择 “停用”(Deactivate),然后点击 “应用”(Apply)。

刷新网站
- 如果错误消失,说明某个插件引发了问题。
如何找出导致错误的插件?
逐个激活插件
- 重新启用每个插件,并在每次启用后刷新网站,检查是否再次出现 “重定向次数过多” 错误。
- 激活某个插件后错误出现,说明该插件是问题所在。
解决方案:找功能相同的替代插件来用;如果是付费插件,你可以找插件支持团队反应问题。
9. 检查 HTTPS 相关问题
SSL 证书 可以在网站上用 HTTPS(超文本传输安全协议),加密服务器与浏览器之间传输的数据,确保用户信息安全,不被黑客窃取。
但如果 SSL 证书没有正确安装,或在未安装 SSL 证书的情况下强制启用 HTTPS,就可能触发 “重定向次数过多” 错误。
如何检查 SSL 证书是否正确安装?
可以用 SSL 检测工具(如 SSL Shopper)来确认 SSL 证书是否正确安装。

HTTPS 重定向规则的配置错误也可能导致重定向循环
如果 HTTPS 重定向规则配置错误,服务器可能会不断将用户从 HTTP 版本重定向到 HTTPS 版本,形成无限重定向循环,从而触发 ERR_TOO_MANY_REDIRECTS 错误。
通常,如果 SSL 证书是通过主机服务商申请的,他们会自动配置 HTTPS 重定向。
但如果手动设置重定向规则(例如修改 .htaccess 文件),必须确保规则编写正确,否则可能导致 “HTTP 重定向次数过多” 的错误。

避免该问题的方法
- 确保 SSL 证书已正确安装
- 正确配置 HTTPS 重定向规则,避免不必要的循环跳转
10. 检查第三方服务
如果用 Cloudflare 作为 CDN,并且 SSL 模式设置为“Flexible”(灵活模式),可能会导致网站出现重定向循环。
这是因为 “Flexible” 模式 会强制网站使用 HTTP 加载,即使已经安装了 SSL 证书,也会引发 ERR_TOO_MANY_REDIRECTS 错误。
如何修复?
可以在 Cloudflare 中切换到其他加密模式,例如 “Full”(完全) 或 “Full (strict)”(完全严格)。
修改 Cloudflare SSL 设置的方法
- 登录 Cloudflare 仪表盘,选择你的网站域名。Cloudflare 仪表盘

- 在左侧菜单中,点击 “SSL/TLS”。Cloudflare 左侧菜单中的“SSL/TLS”选项

- 将加密模式更改为 “Full”(完全)或“Full (strict)”(完全严格)。

这样,Cloudflare 就不会强制使用 HTTP,而是正确支持已安装的 SSL 证书,避免 重定向循环。

通过定期网站审计修复并预防重定向错误
重定向链 和 重定向循环 等问题可能会触发 ERR_TOO_MANY_REDIRECTS 错误。及时修复这些问题可以确保良好的用户体验,避免流量损失。
© 版权声明 文章版权归作者所有,未经允许请勿转载。 相关文章暂无评论... |
---|