2016-10-13 4 views
0

У меня возникли проблемы с написанием правила перезаписи URL для IIS 8.5. Мои правила написания справки едва ли промежуточные, и документация не помогла.Правило переопределения URL-адреса IIS - тест работает, но нет результатов

Я пытаюсь перенаправить следующий URL:

hostname.com/sub1/sub2/sub3/sub4

к этому URL:

hostname.com/sub1/sub6/sub7/sub2/sub4

И что, я имею в виду -

  • hostname.com является переменной. В этом одиночном .NET-приложении используется несколько имен хостов.
  • sub1 остается неизменным и не является переменной.
  • sub2 является вспомогательным элементом, который должен запускать шаблон и не является переменной, однако он перемещается в другое место в URL-адресе.
  • Учитывая предыдущие две точки, я предполагаю, что строка «sub1/sub2» должна быть жестко закодирована в шаблон, чтобы идентифицировать URL-адреса для преобразования и избежать переадресации циклов.
  • Sub3 удаляется.
  • sub4 - переменная.
  • sub6 и sub7 не являются переменными.

Я знаю, что я неправильно использую переменную терминов - что я имею в виду под переменной, так это то, что эти части URL-адреса изменяются и должны быть захвачены и использованы как обратные ссылки.

Поясню на примере:

https://hostname.com/application/catalog/v3g5h6j8k9/feline-footwear

к ->

https://hostname.com/application/showcase/default/catalog/feline-footwear

Все мои попытки написания правило не удалось. Я уверен, что все делаю неправильно.

Я думал, что сблизился с этим. Шаблоны тестов все преуспели, но он не забирал входящий URL. Я просто получаю 404: - (. *)

  <rule name=“Catalog redir” enabled=“true” stopProcessing="true"> 
       <match url=“^(.*)/application/catalog/(.*)/(.*)” /> 
       <action type="Redirect" url=“{R:1}/application/showcase/default/catalog/{R:3}” redirectType="SeeOther" /> 
      </rule> 

Я также попытался с помощью ([A-Za-z0-9 _ +] +) вместо

Кроме того, я установил это правило на уровне/application дерева, а не в корне. Это может быть неверно? Или лучше, как расположение правила в дереве веб-сайта коррелирует с шаблоном? Я тоже не мог найти это в документах.

Заранее благодарим за любые советы.

ответ

0

Устранение правила в дереве в отношении его формата. Поскольку он не был помещен в корневой каталог, но был помещен в/application, как только я избавился от первого раздела, так что начало URL-адреса совпадения было приложением, оно начало работать.