这只会影响 Internet Explorer,其他浏览器(Chrome、Opera、Vivaldi 等)均可正常使用。
IE浏览器仅有的通过代理运行时可以工作。也就是说,当 Fiddler 打开时它可以工作,并且仅供测试,通过代理运行时也可以工作微型代理。我说的“不工作”是指它只是停留在“查找 example.com...”上。它甚至没有超时或发生其他事情。
我制作了一小段代码来检查系统中的默认代理,因为“Internet 选项”报告没有活动的代理。
static void Main(string[] args)
{
var target = new Uri("http://www.vg.no");
var proxy = WebRequest.GetSystemWebProxy();
var proxyUri = proxy.GetProxy(target);
var bypassed = proxy.IsBypassed(target);
Console.WriteLine($"Type of proxy object: {proxy.GetType().Name}\nNamespace of proxy object:{proxy.GetType().Namespace}\nTarget uri: {target.AbsoluteUri}\nProxy uri: {proxyUri.AbsoluteUri}\nIs target bypassed in proxy? {bypassed}");
Console.ReadLine();
}
并且输出非常奇怪:
Type of proxy object: WebProxyWrapperOpaque
Namespace of proxy object:System.Net
Target uri: http://www.vg.no/
Proxy uri: http://www.vg.no/
Is target bypassed in proxy? True
如果我的代码是正确的,它看起来就像是试图将自己用作代理。我无论如何也想不出问题是什么。
(顺便说一句:当 Fiddler 处于活动状态时,它会报告Proxy uri: http://127.0.0.1:8888
并Is target bypassed in proxy? False
符合预期。)
有人见过这样的事情吗?
我的代理设置:
我的相关注册表设置:(参考本文)
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings]
"MigrateProxy"=dword:00000001
"ProxyEnable"=dword:00000000
"ProxyHttp1.1"=dword:00000001
"EnableHttp1_1"=dword:00000001
"ProxyOverride"="*.local"
"ProxyServer"="127.0.0.1:8123"