我一段时间都在寻找这个问题的答案。我正在开发一个VB.NET项目,我有几个.aspx文件,我想映射到不同的url路径。 web.config文件中的映射是否有标记,类似于使用java中的web.xml映射.jsp:
<servlet>
<servlet-name>myjsp</servlet-name>
<jsp-file>/hello.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>sample</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>
编辑:我相信我可以通过UrlRewriter实现我想要做的事情,但是我不能让这个配置起作用,因为我不知道我必须做什么参考(Intelligencia.UrlRewriter不作为参考汇编存在) ?)
<configSections>
<section name="rewriter"
requirePermission="false"
type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter" />
</configSections>
<system.web>
<httpModules>
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
</httpModules>
</system.web>
<rewriter>
<rewrite url="WebForm1.aspx" to="WebForm1/" />
<rewrite url="~/products/CDs.aspx" to="~/products.aspx?category=CDs" />
<rewrite url="~/products/DVDs.aspx" to="~/products.aspx?category=DVDs" />
</rewriter>
我的理解是,如果您使用的是IIS7,则必须用
替换httpModule部分。 <system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules runAllManagedModulesForAllRequests="true">
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
</modules>
</system.webServer>
答案 0 :(得分:0)
将〜/ WebForm1.aspx映射到〜/ Web
<configSections>
<section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter"/>
</configSections>
<system.web>
<httpModules>
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
</httpModules>
<compilation debug="true"/>
<urlMappings enabled="true">
<add url="~/Web" mappedUrl="~/WebForm1.aspx" />
</urlMappings>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules runAllManagedModulesForAllRequests="true">
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule"/>
</modules>
<!-- THE FOLLOWING LINE MUST BE PRESENT FOR AJAX & VALIDATION TO WORK WITH URLREWRITER.NET -->
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<!--</handlers>-->
</system.webServer>
<!-- URL REWRITER -->
<rewriter>
<!--<rewrite url="~/WebForm1.aspx" to="~/WebForm2.aspx"/>-->
</rewriter>
在配置标记内部,着名的重写节点将重定向,名称将通过URL映射
进行修改这需要引用Intelligencia.UrlRewriter来转发我在github上找到的网址(但不是重命名)。