2010-06-15 3 views
0

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

www.domain.com/en/ -> www.domain.com/en/index.aspx 
www.domain.com/hr/ -> www.domain.com/hr/index.aspx 
www.domain.com/de/ -> www.domain.com/de/index.aspx 

каталогами Э.Н., ч, де на самом деле не существует на веб-сервере, они просто маркеры для Languange, используемых в Интернет, используемой дома выращены HTTP модуль, который будет переписывать путь с Params запроса.

Быстрое решение было определить правило для каждого языке, что-то вроде этого:

<rewrite> 
    <rewriteMaps> 
     <rewriteMap name="Langs"> 
      <add key="/en" value="/en/index.aspx" /> 
      <add key="/hr" value="/hr/index.aspx" /> 
      <add key="/de" value="/de/index.aspx" /> 
     </rewriteMap> 
    </rewriteMaps> 
<rules> 

Но я бы очень хотел, решение, которое не требует изменений в web.config и добавление правила перезаписи для каждого Languange, используемого в частности сайт.

Спасибо!

ответ

2
<rule name="Lang-Redirect"> 
    <match url="^(\w{2})\/?$" /> 
    <action type="Rewrite" url="{R:1}/index.aspx" /> 
</rule> 

Это должно позволить вам захватить языковой тег из запроса и переписать его на свой собственный обработчик http.

+0

wow, так быстро и отлично работает :) tnx! –