火狐配置更改与B站视频加载的某项冲突
最近尝试从Chrome换成Firefox(87.0国际最新版),并搜索了推荐的隐私配置进行更改。使用过程中发现B站一直加载失败,但爱奇艺、优酷等都还能用。为此花费许久尝试了搜到的各种办法(关插件、硬件加速、弹幕渲染等),均未奏效。后来自己摸索,一条条查修改的配置,终于找到了问题所在。
以下为失败信息:
- 视频显示
加载视频内容[失败] MEDIA SEGMENT 下载错误 403downloadError - B站网络诊断中域名诊断如下:
//static.hdslb.com 100ms
//www.bilibili.com 300ms
//interface.bilibili.com 1000ms
//security.bilibili.com 200ms
//i0.hdslb.com 200ms
//t.bilibili.com 200ms
//s1.hdslb.com 300ms
//s2.hdslb.com 300ms
//message.bilibili.com 200ms
//api.vc.bilibili.com 200ms
//api.live.bilibili.com 300ms
//api.bilibili.com 1000ms - 打开WEB开发者工具会发现网页有一连串如下报错:
HTTP/2 403 Forbidden 22ms
解决方法是打开about:config,将network.http.referer.XOriginPolicy改为0(默认为0,本人此前修改为2了)。
network.http.referer.XOriginPolicy:0=always send, 1=send if base domains match, 2=send if hosts match。
默认在所有情况下都发送此referer头,若改为1或2都将导致B站视频加载失败。测试了一下发现爱奇艺可在=1时运行,优酷、腾讯、中国大学MOOC可在=2时运行。
本来都打算直接重置Firefox,再不行换回Chrome了。原以为是Firefox的锅,没想到是B站迈不过更高的门槛。