none
IE11 on Windows 7 using wrong User-Agent value and breaking websites RRS feed

  • Question


  • Hi.

    I've noticed some websites reporting that I am using an old and unsupported version of Internet Explorer, even though I am running a fully patched IE11 on Windows 7 64-bit.

    It should be noted that I have no URLs listed in my compatibility view list, and neither do I have the 'use Microsoft compatibility list' checkbox set, and there is no compatibility view icon showing in the address bar.

    I do have Enhanced Protected Mode enabled, which as far as I can identify on a Windows 7 platform has no effect other than to force all iexplore.exe processes to be 64-bit (whereas without EPM enabled the default behaviour is for the parent iexplore.exe process to be 64-bit but all browser tab processes to run as 32-bit).

    I also have EMET installed (in case that is having any impact).

    A couple of example sites that report that my browser is too old (and therefore refuse to function with my browser) are Google Maps (www.google.co.uk/maps) and the login page of Game Golf (www.gamegolf.com).

    I performed a packet capture using Wireshark to see if I could see why these websites think my browser is unsupported and to my surprise the HTTP request header from the browser contained a User-Agent string with a value that reported:

    Mozilla/8.0 (compatible; MSIE 6.0; Windows; Trident/7.0; rv:11.0) like Geko

    The "Mozilla/8.0" bit stands out as being odd, in that 8.0 looks like too high a version number, but I assume that it is primarily the MSIE 6.0 reference that is falsely triggering the 'old browser' detection.

    Visiting www.useragentstring.com also reports the same value.

    This looks like some form of compatibility mode kicking in, even though, as stated above, this feature is not enabled.

    For comparison I set up a simple PHP page on my own (Internet hosted) web server which echoes back the value of the HTTP Request Header value for User-Agent string, and also uses client-side JavaScript to query the browser User-Agent String.

    When visiting this page with the browser, and again running a Wireshark packet capture, both the header value and the client-side query agree that the User-Agent string has the expected IE11 value of:

    Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Geko

    So what is causing the browser to emulate the MSIE 6.0 UA string and report a Mozilla major version number of 8 for some websites, but not others?

    Any ideas/suggestions/information would be most welcome.

    Many thanks.



    • Edited by ProDigi69 Wednesday, May 20, 2015 9:51 PM
    Wednesday, May 20, 2015 9:51 PM

Answers

  • Hi,

    Tools>Compatibility view settings>check "Include updated website lists from Microsoft". Save your changes... Close and reopen any IE windows for the list to be updated and applied.

    I am sure that the sites will be the ones on the list.

    IE9 and higher (in different emulation modes) send different userAgent strings, as does 64 and 32 bit browser windows...

    web sites should not use UAS sniffing... use feature testing instead or a js shim like modernizr. That's why MS still has a central 'compatibility view list' of websites that have been programmed for earlier browser versions or are using UAS sniffing to make them 'work'.

    To avoid confusion please include links to any websites you are having problems with your questions.

    Regards.


    Rob^_^

    Thursday, May 21, 2015 2:52 AM