首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在实现UrlRewriter.net时保留旧URL

在实现UrlRewriter.net时保留旧URL
EN

Stack Overflow用户
提问于 2009-11-06 19:28:52
回答 1查看 181关注 0票数 0

我今天在我的网站上添加了UrlRewriter.net,它可以很好地将我的搜索引擎优化链接重定向到实际页面。问题是,是否有任何方法可以将我的旧链接保留在站点中,并让ResolveUrl()使用规则输出我页面中的链接。搜索机器人和用户都不应该查看“旧”链接。

页面中的示例链接:

代码语言:javascript
复制
<a href="<%= ResolveUrl("~/Help.aspx") %>">Help</a>

我在web.config中添加了如下重写代码:

代码语言:javascript
复制
<rewrite url="~/help" to="~/help.aspx" />
<rewrite url="~/help/(.+)" to="~/help.aspx?section=$1" />

首先,不需要像MVC那样做任何额外的工作就可以渲染链接,这将是很棒的。第二个最好的方法是,如果有一种很好的方法,也可以在重写列表中为“other way”添加规则。

这也使我能够在调试时轻松地关闭/打开重定向。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-11-12 02:10:48

好的。我在我的web.forms中实现了MVC路由中使用的路由技术,这允许我使用以下代码:

ASPX:

代码语言:javascript
复制
<%= Url.RouteUrl("article", new { name="my-name-for-artcile"}) %>

并在一个地方注册所有路由,如下所示:

代码语言:javascript
复制
routes.MapWebFormRoute("articles", "artiklar", "~/articles.aspx");

我使用了Phil Haack编写的关于Webform routing的代码,但对它做了一些小的修改,让它可以与母版页一起工作,还添加了一些web.config settigns,让它在使用非aspx urls的服务器上顺利工作。

现在它可以正常工作了,但我停止使用UrlRewriter.net来获得我想要的功能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1687016

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档