IE11がIEとして認識されないトラブルについて

IE11がIEとして認識されないトラブルについて

ユーザーエージェントで各ブラウザを認識し、
ブラウザによって処理の内容を振り分ける事は良くあると思います。

今回、Internet ExplorerのバージョンがIE10からIE11にバージョンアップした事により、
IE11でページを見た際に不具合が確認されました。

ユーザーエージェント文字列の変更

<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>

以前のバージョンIE10と新バージョンIE11のユーザーエージェントをPHPで出力して比較したところ、

【IE10】
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)

【IE11】
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko

IE11ではブラウザトークン(MSIE 10.0)がなくなり、
バージョントークン(rv:11.0)に変更されていました。

詳しくはマイクロソフトの公式ページで確認して下さい。

ユーザーエージェントを取得した文字列からIEとして認識する文字列の見直しが必要となります。

ユーザーエージェント文字列一覧

参考までに、IEのユーザーエージェント文字列一覧を集めてみました。

▼Windows8 IE11 32bit
Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko

▼Windows7 IE11 32bit
Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko

▼Windows7 IE11 64bit
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko

▼Windows7 IE10 64bit
Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)

▼Windows7 IE8 64bit
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0; GTB7.5; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>