这些是我在开发服务器上的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>
答案 0 :(得分:0)
我们有一个类似的规则,使用(。*)而不是(。+)。可能适合您(如果您的用例可以接受)。
答案 1 :(得分:0)
Go Run - &gt; inetmgr - &gt;选择您的网站 - &gt;右键单击属性,然后选择配置。
在可执行文件和扩展名中选择C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ aspnet_isapi.dll。
取消选中“验证文件是否已存在。”