在使用ASP.NET MVC的Action方法中使用哪种重定向方法进行SEO? R
我正在创建一个支持多种语言的网站.
我还想本地化URL,以便它可以这样工作: > www.domain.com/en/contact 为了达到这个目的,我决定为每种语言使用不同的控制器. 我还添加了将访问者首选语言存储在cookie中的代码. 如果同一用户访问www.domain.com,我希望代码检查该cookie,然后使用适当的语言将访问者重定向到索引页面. 为了实现这一点,我在路由的global.asax中有这个代码 routes.MapRoute( "Default",// Route name "{controller}/{action}/{id}",// URL with parameters new { controller = "en",action = "LanguageRedirect",id = UrlParameter.Optional } 然后在en控制器中有LanguageRedirect动作方法: public ActionResult LanguageRedirect() { string cultureName=""; HttpCookie cultureCookie = Request.Cookies["_culture"]; if (cultureCookie != null) { cultureName = cultureCookie.Value; cultureName = cultureName.Substring(0,2); } // Some custom code that checks valid languages if (!CultureHelper.isValidCulture(cultureName)) cultureName = "en"; return RedirectToAction("Index",cultureName); } 我不确定什么应该适合SEO的重定向方法? 解决方法
您应该使用RedirectToAction(302)而不是RedirectToActionPermanent(301).
如果资源已分配新URI且原始URI不再有效,则应基本上重定向301. 参考: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html https://webmasters.stackexchange.com/questions/26876/301-redirects-for-regional-variants-of-a-homepage (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – .net http处理程序重定向到rtmp和fle
- asp.net – 如何在volusion中编辑产品详细信息页
- ASP.Net MVC C#另一个viewmodel中的两个viewmode
- asp.net-mvc-3 – 如何有效地从自相关表中加载数
- 为什么ASP.NET身份中的Logout使用POST而不是GET?
- .net – 有人有一个例子,说明为什么我会主持一个
- 我是否需要在asp.net中取消订阅(手动订阅)活动?
- ASP.NET OAuth授权 – 使用ClientId和Secret以及
- asp.net signalR 专题—— 第二篇 对PersistentC
- asp.net-mvc – 如何在共享托管环境中实现ASP.Ne