asp.net – 将default.aspx重定向到根虚拟目录
发布时间:2020-12-15 23:03:55 所属栏目:asp.Net 来源:网络整理
导读:我有一个简单的ASP.NET 3.5应用程序在IIS7下运行在虚拟目录下.所以我的应用程序的URL就像 http://example.com/app.我想要301重定向请求到example.com/app/default.aspx到example.com/app更好的SEO.我必须通过代码执行此重定向,而不是通过任何IIS设置.我无法
我有一个简单的ASP.NET 3.5应用程序在IIS7下运行在虚拟目录下.所以我的应用程序的URL就像
http://example.com/app.我想要301重定向请求到example.com/app/default.aspx到example.com/app更好的SEO.我必须通过代码执行此重定向,而不是通过任何IIS设置.我无法通过本文中提到的代码:
http://www.4guysfromrolla.com/articles/072810-1.aspx 代码: if (request.RawUrl.Equals("/default.aspx")) { newUrl = string.Format("{0}://{1}{2}",request.Url.Scheme,request.Url.Authority,request.RawUrl.Remove(request.RawUrl.LastIndexOf("/default.aspx",StringComparison.OrdinalIgnoreCase))); context.Response.Status = "301 moved permanently"; context.Response.AddHeader("Location",newUrl); } 当应用程序处于虚拟目录下时,似乎进入无限循环. request.RawUrl属性始终返回“/default.aspx”,即使在导致无限循环的301重定向之后.如何解决这个问题? 谢谢, 阿西夫 解决方法
只要你没有子目录,上面的代码就可以正常工作. AFAIK是ASP.NET中的一个错误:当URL没有该扩展名时,Request.RawUrl不应包含“/default.aspx”.我已经测试了你的代码,没有子目录,它的工作正常,但如果default.aspx在一个目录下,Request.RawUrl对象无法摆脱default.aspx,因此无限循环.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – Javascript日期本地化
- asp.net-core – 运行kpm restore时无法找到Microsoft.AspN
- 如何在asp.net母版页中插入javascript [复制]
- asp.net-mvc – ASP.net MVC 3教程推荐
- ASP.Net会员登录问题
- asp.net-mvc – 在Asp.Net MVC应用程序中使用Structuremap将
- asp.net-mvc – 我在哪里可以找到ASP MVC文档?
- ASP.NET应用程序池回收问题
- asp.net web api定义的c/s调用方法一例
- asp.net-mvc – 传入字典的ASP.NET MVC模型项是类型的
推荐文章
站长推荐
- 在asp.net httpContext.Cache中存储/检索项目最有
- asp.net-mvc-3 – 如何通过HTML类(Razor语法)在M
- asp.net-mvc-4 – WebAPI如何指定控制器将到达哪
- asp.net – ConfigurationManager.GetSection返回
- asp.net-mvc – 可以在当前使用ASP .NET的Web应用
- ASP.NET vNext Core CLR缺少type.IsPrimitive
- asp.net应用程序如何工作?
- asp.net core 使用 signalR(一)
- asp.net-mvc-4 – MVC 4 RC – Aspnet_regsql.ex
- asp.net -fb-like一段时间后用fb-share插件消失了
热点阅读