私はモバイル(携帯電話)デバイスで表示されるWebサイトを開発しています。私は単純なHTML 4.01を使用しています。何も特別なものはありません。 Nokia Series 40 1-5版以外は、テストしたすべてのモバイルブラウザでページが正常に表示されます。詳細を見ると、IISはtext/html
の代わりにtext/vnd.wap.wml
というコンテンツタイプのhtmlを自動的にレンダリングしているようです。私たちはWAPを使用していないので、ページはエラーで失敗します。asp.net mvcは.wmlでtext/htmlコンテンツタイプをオーバーライドし続けます
私はASP.Net MVC 1.0を使用していますので、content-typeをオーバーライドするためにActionFilterAttribute
を追加しました。このコードは実行されますが、依然としてクライアント側でvnd.wap.wmlとして出力されます。
私はこのdoctypeを使用しています。
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
それはvnd.wap.wmlは、携帯電話のブラウザで指定された最初のAccept-Encoding
あるので、私はIIS7は、その理由のためにそれを提供していると仮定していることは注目に値します。 MVCは特に.html(または.aspx)ファイルを参照していないので、おそらくMIMEタイプがスキップされていると思いますか?おそらくこれはコード修正ではなくIIS修正だと思われます。
ご協力いただきありがとうございます。