2010-08-27 4 views
0

J'utilise un projet d'application Web .net framework 4 sur mon IIS local 7.5 avec le module URL Rewrite 2.0 installé.Pourquoi Url Rewrite 2.0 ne fonctionne-t-il pas?

Mon application contient une page appelée sitemap.aspx. Je veux être capable de mapper/sitemap.aspx

Ceci est mon code jusqu'à présent et cela ne fonctionne pas. En appelant/sitemap, j'obtiens un écran d'erreur 404 Not Found. Que manque-t-il?

<rewrite> 
     <rules> 
      <rule name="LowerCaseRule1" enabled="true" stopProcessing="true"> 
       <match url="[A-Z]" ignoreCase="false" /> 
       <conditions> 
        <add input="{URL}" matchType="Pattern" pattern="^.+\.((axd)|(js)|(xaml))$" ignoreCase="true" negate="true" /> 
       </conditions> 
       <action type="Redirect" url="{ToLower:{URL}}" redirectType="Permanent" /> 

      </rule> 
      <rule name="RemoveTrailingSlashRule1" stopProcessing="true" enabled="true"> 
       <match url="(.*)/$" /> 
       <conditions> 
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> 
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
       </conditions> 
       <action type="Redirect" url="{R:1}" /> 
      </rule> 
     </rules> 
     <rewriteMaps> 
      <rewriteMap name="test"> 
       <add key="/sitemap" value="sitemap.aspx"/> 
      </rewriteMap> 
     </rewriteMaps> 
    </rewrite> 

Répondre

0

je manque une entrée dans la section:

Ajouter

 <rule name="Rewrite rule1 for test"> 
      <match url=".*" /> 
      <conditions> 
       <add input="{test:{REQUEST_URI}}" pattern="(.+)" /> 
      </conditions> 
      <action type="Rewrite" url="{C:1}" appendQueryString="false" /> 
     </rule> 

et tout fonctionne bien