有一个ASP.NET 2.0网站,我打算迁移到基于ASP.NET 4.0的新Web框架。虽然我知道这涉及到手动准备一个脚本/程序来将站点内容从旧应用程序的数据库模式转换为新的,但我更关心的是保留旧的URL格式;将它们映射到新的Web引擎的URL格式。修复ASP.NET网站后维护旧网址
我还没有决定什么是最合适的CMS引擎迁移(因此Web窗体或MVC仍然不清楚)。不过,我想每个人的经验借鉴
- 一般性问题看出来的(不管网络应用平台)
- 候选策略/技术来处理URL在ASP.NET 重映射
Google Analytics已针对该网站进行了配置,因此存在最需要的学习链接的历史记录 - 这是重新映射的最重要的网址格式,哪些不值得保留。
由于工作领域我已转移到过去几年,我一直没有能够跟上最新的ASP.NET功能,可以帮助这一点。奇怪的是,我发现很少有内容讨论如何正确保留旧的URL。大多数网站在进行设计检修时完全舍弃其旧链接是非常令人讨厌的。
我首先想到的最直接的技术就是在web.config中指定一个自定义的404 aspx页面,它将读取旧请求的URL(它将携带原始内容ID)。根据内容ID,查找自定义数据库表以查找新内容ID,并使用新URL重定向。
在这一点上,我不确定我是否想使用URL重写HttpModule或扩展,因为我只想在它变成404时引起“查找”,而不是检查每一个请求。知道旧的URL请求最终会随着时间消失。
我应该考虑哪些其他因素/方面?
我不打算直接向客户发出404或302; 404只适用于自定义404页面处理,然后再渲染301响应。 – icelava 2011-03-07 16:42:02
这是一个很好的解决方案马修。你可以看看问题/ 29823873,并提出你的意见。 – Hitz 2015-04-23 14:57:47