.NET Url переписать корневой URL - PullRequest
3 голосов
/ 05 апреля 2011

У меня есть следующее правило в IIS7:

    <rule name="RewriteAll" stopProcessing="true">
      <match url="^([^/]+)/?$" />
      <conditions>
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
        <add input="{URL}" negate="true" pattern="\.axd$" />
        <add input="{URL}" negate="true" pattern="\.png$" />
        <add input="{URL}" negate="true" pattern="\.gif$" />
        <add input="{URL}" negate="true" pattern="\.jpg$" />
        <add input="{URL}" negate="true" pattern="\.css$" />
        <add input="{URL}" negate="true" pattern="\.js$" />
      </conditions>
      <action type="Rewrite" url="default.aspx?page={R:1}" />
    </rule>

Этот URL для уловов типа http://mysite.com/contact/

Я не могу понять, какое правило использовать, чтобы поймать http://mysite.com/ и отправьте, например, на home.aspx.Может ли кто-нибудь помочь мне с регулярным выражением матча

Ответы [ 2 ]

15 голосов
/ 05 апреля 2011

Я исправил это, добавив следующее правило:

 <rule name="Index Request" enabled="true" stopProcessing="true">
     <match url="^$" />
     <action type="Rewrite" url="index.aspx" logRewrittenUrl="true" />
 </rule>
0 голосов
/ 05 апреля 2011

Почему бы просто не настроить каноническое имя (CName) на вашем DNS-сервере для автоматического перенаправления http://domain.com на http://www.domain.com?

См. Объяснение CName в Википедии

...