我在IIS6中的服务器上运行了一个网站。该网站在端口80上配置了两个主机头绑定:
因此,理论上使用Web浏览器访问:
...应该在我的浏览器中显示完全相同的网站。
但是,当我使用IE9查看http://mywebsite1/时,浏览器发送到Web服务器的UserAgent是:
Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+6.1;+Trident/5.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30729;+Media+Center+PC+6.0;+Tablet+PC+2.0;+MS-RTC+LM+8;+OfficeLiveConnector.1.5;+OfficeLivePatch.1.3;+.NET4.0C)
但是当我使用IE9查看http://mywebsite2.mydomain.com/时,浏览器发送给Web服务器的UserAgent就是:
Mozilla/5.0+(compatible;+MSIE+9.0;+Windows+NT+6.1;+Trident/5.0)
为什么IE9会在这两种情况下发送不同的UserAgent字符串?浏览器也在模拟这些用户代理的渲染规则,因此这会导致噩梦般的CSS问题!
其他信息:
答案 0 :(得分:4)
IE9 reports Mozilla/4.0
在兼容性视图中,您在查看http://mywebsite1/时是否点击了“撕页”图标? (视图也可以是服务的html requested。)
答案 1 :(得分:0)
这将改变使用者;然而,当我更改使用者时,它将仅用于我正在使用的网站,并且我在网上冲浪,使用者将返回到它的默认值。这就是我用来改变useragent的代码
WebBrowser1.Navigate(txtAddressBar.Text,Nothing,Nothing,“user-agent:”&“Mozilla / 5.0(Windows; U; Windows NT 5.1; en-US)AppleWebKit / 532.2(KHTML,类似Gecko)ChromePlus /4.0.222.3 Chrome / 4.0.222.3 Safari / 532.2“)
此代码发布为一行;但是,我还不知道如何在这里做到这一点。