为何无法在Chrome开发者工具中查看301重定向?
这问题我之前排查过好几次,Chrome的Network面板有时候会因为浏览器内部的机制“藏”起一些重定向记录,尤其是像Google这种配置了特殊安全策略的域名,咱们一步步来解决:
可能的原因及对应解决方案
1. HSTS 强制跳转让HTTP请求被内部处理
Google的域名大概率已经在你的Chrome HSTS缓存中,这个机制会让Chrome直接把http://google.com的请求转为https://www.google.com,完全跳过了原本的HTTP 301重定向步骤,所以Network面板自然看不到这条记录。
解决步骤:
- 打开Chrome的
chrome://net-internals/#hsts页面 - 在「Delete domain security policies」输入框中填入
google.com,点击「Delete」按钮 - 重启Chrome,手动输入完整的
http://google.com(必须带http://前缀),再查看Network面板,这时候应该就能看到301重定向记录了。
2. Chrome自动补全HTTPS协议,跳过了初始HTTP请求
如果你只是在地址栏输入google.com,Chrome现在默认会自动加上https://前缀,直接发起HTTPS请求,根本不会去请求HTTP版本的google.com,自然看不到对应的301重定向。
解决方法:
- 务必手动输入完整的
http://google.com,不要依赖浏览器的自动协议补全。
3. 浏览器扩展干扰了请求流程
一些广告拦截、隐私保护或者代理类的扩展,可能会修改甚至拦截初始的HTTP请求,导致重定向记录无法在Network面板中显示。
解决方法:
- 打开Chrome的隐身模式(快捷键Ctrl+Shift+N),隐身模式默认会禁用所有扩展,此时再测试访问
http://google.com。如果能看到重定向记录,就说明是某个扩展的问题,逐个排查已安装的扩展即可。
4. 查看Chrome NetLog获取完整请求链路
如果上面的方法都无效,可以通过Chrome的NetLog工具查看更详细的内部网络操作日志,它会记录所有浏览器层面的网络事件,包括Network面板没显示的跳转。
操作步骤:
- 打开
chrome://net-internals/#events页面 - 点击「Start logging to disk」,选择日志保存路径
- 在地址栏输入
http://google.com,等待页面加载完成 - 点击「Stop logging」,在日志搜索框中搜索
301或者redirect,就能找到对应的重定向记录了。
内容的提问来源于stack exchange,提问作者Leeren
相关产品推荐
相关产品推荐

