我有一个具有以下Doctype的网站:
<!DOCTYPE HTML> <html>...</htm>
我发现了导致某些移动浏览器崩溃的问题(黑莓和老式机器人).例如,在Android上,当发出请求时,它会发送此标头:
Accept: application/xml,appliation/xhtml+xml,text/html ...
问题是我的网站不符合XHTML,但IIS决定,因为请求页面的浏览器更喜欢xhtml,那么它应该提供而不是text / html.
我已经尝试通过添加< Meta HTTP-EQUIV =“CONTENT-TYPE”CONTENT =“text / html; charset = UTF-8”>来覆盖它.到页面,但它不起作用.
我正在试图找出最简单的方法告诉iis停止为http://mydomain.com/mobile的所有请求提供xhtml.我想通过覆盖HttpModule中的Response.Content-Type来做到这一点.
解决方法
IIS没有你提到的功能(覆盖.NET输出的内容类型),因为它取决于应用程序执行此操作.移动设备“断开”时会发生什么,您能提供HTTP调试跟踪吗?
要测试ContentType是否确实存在问题,请将其添加到其中一个页面的Page_Load事件中,然后在受影响的移动设备上查看该页面.
Response.ContentType = "text/html";
移动浏览器对桌面版本有疑问,它们解析JavaScript,以不同方式处理DOM元素.例如,Mobile Safari有一个不完整的Date.parse()方法,它会导致JS在该页面上中断.
尝试在调试模式下运行移动浏览器(如果可能),看看实际的错误是什么.因为我无法看到IIS将如何改变内容类型,特别是对于XHTML类型,这意味着底层HTML必须是完美的,
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。