2015-11-18 2 views
1

Можно ли переписать URL-адрес с помощью IIS на основе заголовков Accept и заголовков запросов.Пересмотр URL-адреса IIS на основе заголовков и типа запроса

мне нужно IIS переписать все URLS в index.html (A Stateful JS приложение) для следующих условий:

  1. Запрос является запрос GET
  2. Принимать заголовки от клиента включает в себя: " text/html "
  3. Не является прямым запросом файла. Запрошенный путь не содержит. (DOT) характер

Я думаю, что его так же, как модуль Node: https://github.com/bripkens/connect-history-api-fallback

ответ

0

Да, вы можете сделать это, если я правильно следовать вашим требованиям, я считаю, что правило URL Rewrite вам нужно ниже. В принципе,

  1. использовать условие, чтобы соответствовать HTTP_METHOD быть GET
  2. использовать условие, чтобы соответствовать HTTP_ACCEPT, чтобы убедиться, что он начинается с текста/HTML, так как обычно они также включают в себя кодирование и другие данные
  3. убедитесь, что он не является файлом

    <rule name="Rewrite Text Requests"> 
         <match url=".*" /> 
         <conditions> 
          <add input="{HTTP_METHOD}" pattern="^GET$" /> 
          <add input="{HTTP_ACCEPT}" pattern="^text/html" /> 
          <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
         </conditions> 
         <action type="Rewrite" url="/index.html" /> 
        </rule 
    

Смежные вопросы