我正在研究以编程方式将301添加到ASP.NET webforms站点的方法和技术。
客户端网站正在针对搜索引擎优化进行优化,我们试图避免通常的“向我们发送301列表,我们会在每次更改时将其添加到网站”。以前我们已经提供了301的列表,并将它们添加到global.asax(根据要求)或web.config,让.NET完成其余的工作。
我想知道是否有任何可接受的“最佳”方式来制作动态301。
我可以在XML / SQL中保留重定向没问题。我猜想如果我们在每次请求时读取xml /查询数据库都会有性能损失。
我当然可以缓存它们 - 但在哪里?应用程序上下文似乎是显而易见的地方,但我担心在Application中保存数百个301。 考虑301快乐SEO专家如何获得我不希望他们添加数千,然后想知道为什么服务器倒下了。这是一个有效的问题吗? 或者在缓存中?具有允许.NET管理内存的优势,以便在资源变得稀缺且可以始终重新创建时清除它们。它是否比应用程序提供任何优势?
我可以添加一个配置xml文件,通过CMS更新它并从web.config中引用它 - 这会起作用还是需要回收站点以获取更改?
澄清,存储和执行301s不是问题。我正在采用一种检查301s并重定向的方法,这种方法可以快速完成,而不会影响用户体验。
答案 0 :(得分:0)
通过挂钩Application_Error事件,如何仅在检测到404时处理列表?这样就可以在没有任何额外负载的情况下处理标准请求,但404发生时仍会重定向。
http://cypressnorth.com/downloads/how-to-create-multiple-301-redirect-urls-in-asp-net-mvc/
(我知道这是一个老问题,但我只是在处理同样的问题)。