Подтвердить что ты не робот

Force IE 11 "Строка агента пользователя" с использованием тегов

Мой сайт разбит на IE11.

Мы все знаем, что теги HTML позволяют разработчику принудительно запускать режим совместимости IE; в примере

<meta http-equiv="X-UA-Compatible" content="IE=8, IE=9" />

отлично работал и решил проблемы визуализации для IE10.

Но на самом деле IE11, даже если Compatibility mode установлен на IE9, User agent string установлен на default, а javascript не работает. Изменение вручную User agent string до IE10 позволило решить мои проблемы.

Для shure я собираюсь решить реальные проблемы, которые вызывают ошибки веб-сайта, но на самом деле Мне нужен быстрый, программный способ принудительно ввести строку User agent в IE10, поскольку я не могу обратитесь к каждому пользователю.

Может кто-нибудь помочь?

4b9b3361

Ответ 1

Решено! Веб-сайт просто устанавливает структуру Dotnet 4.5 на сервере


На самом деле я не нашел способ заставить программно браузеры строку агента пользователя (это был исходный вопрос). Но отремонтированный веб-сайт с кодом 0.

Просто сделал много тестов и на одном сервере я узнал, что сайт работает, на другом сервере это не так.

"Хорошим сервером" был Win2012, а "плохие серверы" - Win2008. На Win2012 работал Aspnet 4.5, а на Win2008 - нет.

Я установил dotnet framework 4.5 на плохих серверах, и все началось!

Ответ 2

Я также столкнулся с той же проблемой на моем Windows-сервере Windows с .net framework 4.0 и после долгого исследования, которое я нашел ниже, полезно...

Я создал папку App_Browsers и поместил файл браузера с именем ie.browser и вставил ниже текст определения браузера и начал работать

<browsers>
<browser id="IE11" parentID="Mozilla">
<identification>
  <userAgent match="Trident\/7.0; rv:(?'version'(?'major'\d+)(\.(?'minor'\d+)?)(?'letters'\w*))(?'extra'[^)]*)" />
  <userAgent nonMatch="IEMobile" />
</identification>
<capture>
  <userAgent match="Trident/(?'layoutVersion'\d+)" />
</capture>
<capabilities>
  <capability name="browser"              value="IE" />
  <capability name="layoutEngine"         value="Trident" />
  <capability name="layoutEngineVersion"  value="${layoutVersion}" />
  <capability name="extra"                value="${extra}" />
  <capability name="isColor"              value="true" />
  <capability name="letters"              value="${letters}" />
  <capability name="majorversion"         value="${major}" />
  <capability name="minorversion"         value="${minor}" />
  <capability name="screenBitDepth"       value="8" />
  <capability name="type"                 value="IE${major}" />
  <capability name="version"              value="${version}" />
</capabilities>
 </browser>

<!-- Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11,0) like Gecko -->
<browser id="IE110" parentID="IE11">
<identification>
  <capability name="majorversion" match="11" />
</identification>

<capabilities>
  <capability name="ecmascriptversion"    value="3.0" />
  <capability name="jscriptversion"       value="5.6" />
  <capability name="javascript"           value="true" />
  <capability name="javascriptversion"    value="1.5" />
  <capability name="msdomversion"         value="${majorversion}.${minorversion}" />
  <capability name="w3cdomversion"        value="1.0" />
  <capability name="ExchangeOmaSupported" value="true" />
  <capability name="activexcontrols"      value="true" />
  <capability name="backgroundsounds"     value="true" />
  <capability name="cookies"              value="true" />
  <capability name="frames"               value="true" />
  <capability name="javaapplets"          value="true" />
  <capability name="supportsCallback"     value="true" />
  <capability name="supportsFileUpload"   value="true" />
  <capability name="supportsMultilineTextBoxDisplay" value="true" />
  <capability name="supportsMaintainScrollPositionOnPostback" value="true" />
  <capability name="supportsVCard"        value="true" />
  <capability name="supportsXmlHttp"      value="true" />
  <capability name="tables"               value="true" />
  <capability name="supportsAccessKeyAttribute"    value="true" />
  <capability name="tagwriter"            value="System.Web.UI.HtmlTextWriter" />
  <capability name="vbscript"             value="true" />
</capabilities>
  </browser>
</browsers>

Ответ 3

Если вы не хотите устанавливать всю .NET Framework 4.5, вы можете просто обновить .NET Framework 4.0 с помощью этого исправления от Microsoft http://www.microsoft.com/en-us/download/confirmation.aspx?id=39257 В моем случае это работало отлично.

Ответ 4

Поместите код в свой WebConfig: работайте в 2017-2018 годах

  <system.webServer>
  <httpProtocol>
    <customHeaders>
      <add name="X-UA-Compatible" value="IE=Edge" />
    </customHeaders>
  </httpProtocol>
  </system.webServer>