2013-05-28 2 views
1

С IIS7, URL Rewrite 2 существует приложение APC MVC4 на сервере SRV. Должна произойти перепись.IIS Rewrite не работает для корня приложения

http://SRV/APP into http://SRV/APP/ 

Я пробовал, создав правило AddTrailingSlash. Однако он не работает для корня приложения. Это делает работу для каталогов в корневом каталоге, так что следующий переписывают делается

http://SRV/APP/pipapo into http://SRV/APP/pipapo/ 

Что должно быть сделано таким образом, переписывание также работает для корня?

ответ

1

следующее правило, кажется, работает для меня:

<!--Add trailing slash to root non-file url--> 
<rule name="Add trailing slash" stopProcessing="true"> 
    <match url="(.*)" /> 
    <conditions logicalGrouping="MatchAll"> 
     <!--Match uri's missing trailing slash--> 
     <add input="{PATH_INFO}" pattern="(.*[^/])$" /> 
     <!--Ignore any uri containing a period (probably a better way to do this but IsFile was not behaving as expected for me)--> 
     <add input="{PATH_INFO}" pattern="(.*?)\.(.*?)" negate="true"/> 
    </conditions> 
    <action type="Redirect" redirectType="Permanent" url="{PATH_INFO}/" /> 
</rule> 
0

По умолчанию, встроенный в дополнительный завершающего слэша не относится к каталогам или имена файлов ... Если вы хотите обратиться к каталогам (например, в в приведенном выше примере http (s): // srv/app), вы должны изменить правило и удалить условие, которое имеет «Тип: не каталог». Не забудьте применить ...

Happy URL Rewriting! :)

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