网站已经运营了几年了,现在因为一系列原因换域名了,这里要用到301将所有老域名的url访问转到新域名上。。
例如:
访问:www.a.com/news/2009/10/10/2321.html
要301到:www.b.com/news/2009/10/10/2321.html现在我这里用的办法是在news页面,news的分类页,首页等页面的page_load里写301.
这样做起来很麻烦。写的页面太多。对于以后维护也不方便。
因为换域名,所有的url除了域名要改成新的,后面的路径都不变。
所以想问下有没有什么办法,能让老域名访问的时候,直接吧老域名那一块换成新域名。
使用HttpModule和HttpHandler来在一个地方操作而不是所有页面。
请赐教。。

解决方案 »

  1.   

    1,建议写一个httpmoduel ,如果用handler,必须为每种后缀都写一个.2.长痛不如短痛,如果你用老域名搞301转向,那么用户以及搜索引擎,永远为认为这个老域名是有效的,反而你的新域名被冷落了.不如搞response.redirect
      

  2.   

    iis搞不了。不是独立服务器。301转向的话,搜索引擎会将权重等慢慢转向新域名的。newdigitime兄,用httpmoduel的话。有文章吗。
      

  3.   

    如果你会在页面中进行301转向,那么把相关代码复制到一个httpmoduel的自定义方法中就行啦.
    譬如:
    public class MyModule : IHttpModule 

    public void Init(HttpApplication application) 

    application.AcquireRequestState += (new EventHandler(this.do301)); 

    private void do301(Object source, EventArgs e) 

    这里写301转向代码
    } 然后在web.config中注册这个httpmoduel
      

  4.   

    http://www.xxsea.com/thread-12630-1-1.htmlweb.config直接就可以301重定向,没那么麻烦