我今天在我的网站上添加了UrlRewriter.net,它可以很好地将我的搜索引擎优化链接重定向到实际页面。问题是,是否有任何方法可以将我的旧链接保留在站点中,并让ResolveUrl()使用规则输出我页面中的链接。搜索机器人和用户都不应该查看“旧”链接。
页面中的示例链接:
<a href="<%= ResolveUrl("~/Help.aspx") %>">Help</a>我在web.config中添加了如下重写代码:
<rewrite url="~/help" to="~/help.aspx" />
<rewrite url="~/help/(.+)" to="~/help.aspx?section=$1" />首先,不需要像MVC那样做任何额外的工作就可以渲染链接,这将是很棒的。第二个最好的方法是,如果有一种很好的方法,也可以在重写列表中为“other way”添加规则。
这也使我能够在调试时轻松地关闭/打开重定向。
发布于 2009-11-12 02:10:48
好的。我在我的web.forms中实现了MVC路由中使用的路由技术,这允许我使用以下代码:
ASPX:
<%= Url.RouteUrl("article", new { name="my-name-for-artcile"}) %>并在一个地方注册所有路由,如下所示:
routes.MapWebFormRoute("articles", "artiklar", "~/articles.aspx");我使用了Phil Haack编写的关于Webform routing的代码,但对它做了一些小的修改,让它可以与母版页一起工作,还添加了一些web.config settigns,让它在使用非aspx urls的服务器上顺利工作。
现在它可以正常工作了,但我停止使用UrlRewriter.net来获得我想要的功能。
https://stackoverflow.com/questions/1687016
复制相似问题