问一个页面重定向的问题

lhh1002 2010-09-14 10:49:08
我的网站是.net做的,需要实现伪静态,插件用的是MSDNURLRewriting,我的文件夹结构是每个频道用一个文件夹保存,频道有首页index.aspx。

网站首页域名是www.abc.com
频道页面使用伪静态二级域名的方式,比如,新闻频道就是http://news.abc.com/,真实地址就是http://www.abc.com/news/

问题出现了,我用http://news.abc.com/news/也可以访问到页面,因为泛域名解析了,导致这样的错误地址也可以访问。

现在我需要遇到http://news.abc.com/news/的页面请求,一律跳转到http://news.abc.com/

请问有什么好的解决办法吗?
...全文
135 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
AsheBin 2010-09-14
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 yao970953039 的回复:]
IHttpModule
判断下路径 不对的一律跳转
[/Quote]

说的正确!
具体的用法是:写一个类,实现IHttpModule接口
然后再web.config里面指定你的类名(要含命名空间)
<httpModules>
<add name="xxx" type="namespace.classname" />
</httpModules>
xueyuyang 2010-09-14
  • 打赏
  • 举报
回复
protected void Application_BeginRequest(Object sender, EventArgs e)
{
}在这个事件中控制跳转
xueyuyang 2010-09-14
  • 打赏
  • 举报
回复
或者在 Global 中protected void Application_Start(Object sender, EventArgs e)
{
自己写代码控制转向,通过域名地址去判断
xueyuyang 2010-09-14
  • 打赏
  • 举报
回复
http://www.cnblogs.com/junjun0803/archive/2007/06/25/781807.html
「已注销」 2010-09-14
  • 打赏
  • 举报
回复
IHttpModule具体怎么写啊
「已注销」 2010-09-14
  • 打赏
  • 举报
回复
IHttpModule
判断下路径 不对的一律跳转
MSDNXGH 2010-09-14
  • 打赏
  • 举报
回复
是的,真HTML是最好,但你是伪静态
「已注销」 2010-09-14
  • 打赏
  • 举报
回复
但是目前还是静态页面要好些啊
MSDNXGH 2010-09-14
  • 打赏
  • 举报
回复
从谷歌发表的优化文章表明动态页也可以,有时比伪静态更好,伪静态弄不好,反而更差。。。
jianshao810 2010-09-14
  • 打赏
  • 举报
回复
在.Net2.0中,每个程序根目录(虚拟主机的Web目录)下都可以建一个Global.asax文件,用来处理aspx网页文件的请求,这里面贡献最大的就是HttpContext.Current.RewritePath(string path)这个方法。无论地址栏里的路径是什么,都可以通过这个方法重写到真实的网址上去。下面看一下具体的操作方法。
建立一个全局配置文件Global.asax,添加下面的事件

protected void Application_BeginRequest(object sender, EventArgs e)
{
//这里添加重写的过程
//示例
string url = HttpContext.Current.Request.Url.ToString();
url = Regex.Replace(url, "newsdetail_([0-9]+)\.aspx","newsdetail.aspx?id=$1", RegexOptions.IgnoreCase);
HttpContext.Current.RewritePath(url);

}

上面的功能就可以把http://**/newsdetail_12.aspx重写为http://**/newsdetail.aspx?id=12

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧