<RewriterRule>
        <LookFor>~/n(\d{1,10}).html</LookFor>
        <SendTo>~/News.aspx?id=$1&amp;</SendTo>
      </RewriterRule>       <add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter"/>
      <add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter"/>
      <add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>
访问http://www.x.com/n33.html正常,访问http://www.x.com/n33.html/ 也正常求如何让访问http://www.x.com/n33.html/出404不存在错误应该是上面的正则没有限定好!

解决方案 »

  1.   

     <LookFor>~/n(\d{1,10}).html$</LookFor>
      

  2.   

    <RewriterRule>
      <LookFor>~/n(\d{1,10}).html/?</LookFor>
      <SendTo>~/News.aspx?id=$1&amp;</SendTo>
      </RewriterRule> 
      

  3.   

    httpHandler处理程序再收到请求时,最后的斜杠已经被去掉了,改成用httpModule
    <httpModules>
    <add type="URLRewriter.ModuleRewriter, URLRewriter" name="ModuleRewriter" />
    </httpModules>
    正则用2楼的