Intellegencia urlrewriter无法正常显示404页面未找到

时间:2011-02-10 17:44:42

标签: asp.net url-rewriting iis-5

这些是我在开发服务器上的web.config文件中的一些摘录。 Intelligencia URL很好但是在生产中部署时(两台服务器上都是IIS 5),它会在每个重写的URL上返回找不到的页面(404错误),除了有〜/(guid值).aspx / value(rewriiten url)工作< / p>

      <section name="rewriter" requirePermission="false" 
                                                                                               type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, 
                        Intelligencia.UrlRewriter"/>

        <system.webServer>

            <modules runAllManagedModulesForAllRequests="true">


       <add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule"/>


        </modules>

        <validation validateIntegratedModeConfiguration="false"/>

    <modules>

 </modules>

                 <add name="Elmah" path="elmah.axd" verb="POST,GET,HEAD"                      type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode"/>

     </handlers>
           </system.webServer>
            <httpModules>

         <add name="ScriptModule" type="System.Web.Handlers.ScriptModule,                        System.Web.Extensions,               Version=1.0.61025.0, Culture=neutral,                          PublicKeyToken=31bf3856ad364e35"/>
             <add                                                                                                  type="Intelligencia.UrlRewriter.RewriterHttpModule,Intelligencia.UrlRewriter" 
        name="UrlRewriter"/>
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>

      </httpModules>

<rewriter>
    <rewrite url="~/myone/tags/(.+)" to="~/myone/tagpage.aspx?tag=$1"/>

  <add  verb="GET,HEAD" path="ScriptResource.axd"     type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>


          <add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory,               Elmah"/>

    </httpHandlers>

2 个答案:

答案 0 :(得分:0)

我们有一个类似的规则,使用(。*)而不是(。+)。可能适合您(如果您的用例可以接受)。

答案 1 :(得分:0)

  1. Go Run - &gt; inetmgr - &gt;选择您的网站 - &gt;右键单击属性,然后选择配置。

  2. 在可执行文件和扩展名中选择C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ aspnet_isapi.dll。

  3. 取消选中“验证文件是否已存在。”