猜测: Edge 中可能存在的内置站点黑名单
背景:在关闭所有拦截器的情况下,调用 Edge 打开网址时遇到特定 Pattern 的网址会被 Edge 拒绝加载,特别像是被黑名单了,因为确实这也不是什么受欢迎的网站(页游广告网站)。
因为事情奇怪,又找不到相关的文档或者前人提问,又很好奇,所以先问了微软,在等回复,原帖地址: answers.microsoft.com/en-us/microsoftedge/forum/msedge_issue-msedge_win11/regarding-the-possible-existence-of-a-builtin-site/f9d172ea-9d17-4970-a74d-d2fbc8cf34d6
用中文重新写一遍小作文~
当我尝试用 cmd 运行下列命令行时:
(因为确实是广告网站,所以在 V2EX 这里我会用下划线代替点)
start chrome wap_tanwan_cn/htmlcode
start msedge wap_tanwan_cn/htmlcode
start firefox wap_tanwan_cn/htmlcode
发生了如下的情况:
Chrome 和 Firefox 正确启动并加载了网站
Edge 只是打开了,但什么也不加载,就好像没给他传 URL 一样
又做了一些尝试,发现:
改变此 URL 的任何一部分,比如 tanwan -> tanwan1 ,htmlcode -> htm1code 之后 Edge 就没问题了
加入额外的前缀和后缀,比如 abcwap_tanwan_cn/htmlcode123 仍然会不加载
任何其它 URL 比如 baidu.com 没问题
抓包发现当 Edge 不加载时,它是真的连 HTTP 请求都没发
很奇怪为什么这网址这么特殊,猜测特别像是被某个 Edge 或者 Windows 内置黑名单过滤掉了。
只是出于好奇,想问问是否有朋友知道原因,是真的有个过滤器,还是有我没注意到的广告屏蔽开关。
P.S. 我不是那网站的员工,就只是好奇而已
P.S. 试过不同机器、不同版本的 Edge ,Win 10 win 11 都一样
P.S. 能关闭的都关闭了:浏览器插件、浏览器设置、Windows 设置里面的广告屏蔽、基于声誉的屏蔽、popup 屏蔽都关掉了
写错了!是.com ,不是.cn
这个网址有 dns 解析吗?
感觉有意思,晚上回去试试我的 edge
win, mac 都显示这个:DNS_PROBE_FINISHED_NXDOMAIN
抱歉我把网址记错了,是.com
直接在 Edge 地址栏里输入 URL 访问,会得到 403 ,说明请求是已经通了,也说明 Edge 不是上不了这个网站
通过外部调用则不打开
win 确实会白屏,而 mac 显示 404
firefox 返回 403
哦是 403
wap.tanwan.com/
Mixed Content: The page at ' wap.tanwan.com/' was loaded over HTTPS, but requested an insecure frame ' da.361759.com/flash/dokt/?'. This request has been blocked; the content must be served over HTTPS.
是因为 Edge 把 iframe 屏蔽了吧:
Mixed Content: The page at ' wap.tanwan.com/' was loaded over HTTPS, but requested an insecure frame ' da.361759.com/flash/dokt/?'. This request has been blocked; the content must be served over HTTPS.
#9 仔细阅读正文,是使用 cmd 运行 start msedge wap_tanwan_com/htmlcode ,是其他程序调用 edge 打开网页特定时出现的问题
是的,加载过程中有问题那都无所谓,毕竟广告网站 加载不出才好。主要想要验证的是一个可能导致 Edge 根本不去尝试加载这个网站的,可能存在的黑名单
这个黑名单直接从地址栏输入 URL 看上去是不触发的(因为各位都看到 403 了 或者看到浏览器的报错了 说明至少尝试加载了),目前看来是从外部调用的时候,这个 URL 会被丢弃
edge 访问 403
#12 哥们,人家 Edge 都告诉你是因为 HTTPS 网页中请求 HTTP 资源属于 Mix Context ,直接被浏览器拦截了,当然不会请求了,你直接访问根本就不会有这个问题
我直接用 Edge 打开这个页面都报错,和什么其他方式打开根本没关系
命令行启动也可以,去掉 htmlcode 访问,因为里面有个 iframe http 访问 over https 了就被浏览器策略毙掉了
其实并非 iframe 的问题,您一边抓包一边对比外部调用和直接浏览器访问,就可以看出区别的
浏览器之所以告诉你“这有一个 iframe 有问题 所以我拒绝加载”,前提是浏览器已经加载了这 URL 他才能看到里面有个 iframe ,对不对~
而我遇到的问题(通过外部调用触发),则是从一开始浏览器都没请求这个 URL ,HTTP 请求根本没发出去,它连看到 iframe 的机会都没有。
以上两种都是加载失败,但是有本质区别的
#15 你没有理解楼主的意思,你可以试试在 cmd 中执行那行命令,edge 启动后地址栏直接是空的,根本不会显示什么报错页面,也根本不会发起任何请求
没有复现,所有平台统一返回 nginx 403 页面
Windows 11 23H2 / Edge 131.0.2903.112 复现成功,其它浏览器没试
Win11 IoT Enterprise LTSC 24H2 (26100.2605) / Edge 131.0.2903.112 也复现出来了,不光如此,start 这个地址是打开一个新的 edge 窗口然后地址栏空白,start 一个其他地址就是在当前 edge 窗口里新开启一个标签页。
Windows 11 24H2 / Edge 131.0.2903.112 无法复现,通过命令行打开了贪玩游戏网页
错了,我没加,加上之后复现成功
啥情况,我写了“我没加 htmlc0de”,发出去 htmlc0de 被吞了
macos 15.1.1 / Microsoft Edge version 127.0.2651.98
代理模式 tun:
chrome 可以打开 youtube,github 这类.
edge 就不行.
如果加载系统代理,(edge)就可以正常打开了, 供参考
确实,有意思的是 start msedge wap_tanwan_com/htmlcode 是新建窗口,而 start msedge wap_tanwana_com/htmlcode 却是在已经打开的 edge 里新建标签页
#18
#17
明白了,是我之前理解有问题,我这里是可以复现的,晚上抽空找找是不是有过滤器之类的
Windows 11 的 Microsoft Edge version 131.0.2903.112 ,可以正常通过 start msedge wap_tanwan_com/htmlcode 打开页面,返回 nginx 403 页面,且是在已存在的 edge 中打开新标签页。
最近 v2 里想 /准备去日本工作的新人多了起来,但有些坑我觉得一定要月月讲,年年讲,避免新人掉坑 去日本工作十有八九都是做 java/ios/andriod 外包。在日本做外…
当前项目有实现以下数据结构的需求: 1 大量的并行读取与修改; 2 支持在多线程情况下以 O1 或者极小的开销随机获取一个数据并删除(数据集为空时返回 null ,不报错。),…
职位是后端开发,最近的需求是将一个原本是前端完成的工作变为后端完成:前端轮询系统接口获取新增交易单后,根据一系列筛选条件过滤之后调用三方接口完成交易。产品需求是获取新增交易单后…