Apache переписать запрос MIME и прокси-сервер? - PullRequest
1 голос
/ 22 января 2010

Я пытаюсь реализовать некоторые правила переписывания Apache для правильной установки типа MIME (in) для XHTML в Internet Explorer. Я нашел эти правила переписывания во многих местах, и они, кажется, работают для большинства людей:

  RewriteCond %{HTTP_USER_AGENT} .*MSIE.*
  RewriteRule .* - [T=text/html]

Однако мой сайт уже использует правила перезаписи с флагом [P] для прокси-запросов к локальному экземпляру Tomcat. Независимо от того, что я делаю, вышеприведенные правила кажутся переопределенными типом mime, возвращаемым из Tomcat. Документы Apache говорят о флаге [P]:

Этот флаг заставляет замещающую часть для внутренней отправки в качестве прокси запрос и сразу (переписать обработка останавливается здесь)

... так что я не могу поставить правила пантомимы после моих правил прокси. Если я поставлю их перед правилами прокси, тип mime будет переопределен прокси.

Есть ли способ установить тип mime для IE, если я использую правила прокси? Или я могу изменить тип mime в Tomcat (к сожалению, требуется изменение кода).

Спасибо, Джефф

1 Ответ

1 голос
/ 29 июня 2011

Я не уверен, сработает ли это, вы можете попробовать. Примените два правила, одно для IE и одно для не IE.

RewriteCond %{HTTP_USER_AGENT} .*MSIE.*
RewriteRule ^(.*)$ http://localhost-tomcat:8080/$1 [T=text/html,P,L]

Второе правило без определения браузера

RewriteRule ^(.*)$ http://localhost-tomcat:8080/$1 [P,L]
...