SAE 更换域名后SEO操作

### 新域名 终于给自己买了个独立域名linsir.org,之前免费tk随时被收回的风险.

更换域名后,搜索引擎都是收集以前的sinaapp.com的二级域名,SAE绑定独立域名后,二级域名还是可以的访问的,为了把流量引到新域名,要做下面一些工作.

  1. 老域名可访问,老用户可访问
  2. 向搜索引擎提交新域名
  3. 301跳转新域名,告诉搜索引擎

# 301跳转

第1点不用做,本身就可以访问.第2点也很,在https://www.google.com/webmasters/tools/login?hl=zh_cn ,http://zhanzhang.baidu.com/等网站管理工具上提交就行了.

这里我重点做301跳转设置.

301跳转(永久重定向) 相比javascirp跳转、mete refresh跳转,php等动态语言reditect,301跳转对搜索引擎最友好,避免作弊嫌疑。 转移流量、权重。不会浪费在原url上的工作成果。

SAE绑定独立域名后,二级域名还是可以的访问,据说这种双域名的对搜索引擎作弊嫌疑,如果是普通空间的,就很好,但是对于SAE这种平台,限制很多,就有一定复杂了.

SAE使用nginx 而SAE又不能更换nginx配置,记得以前还有SAE AppConfig 类似于.htaccess,但是现在发现后台该选项已经不在了,我这里只能更改config.yaml来测试了.

按照在SAE上做301永久重定向跳转的方法做了测试:

- rewrite: if(in_header["host"] ~ "^linsir.org" && path ~ "^(.*)$") goto "linsir.org/$1 [L,QSA,R=301]"

很遗憾,果然无效了.

到这里,我只有用最后的办法了,通过新建新的,将之前的应用采用tonado redirect了,但是测试了结果是302跳转,但是这意味着对搜索引擎非常不好.果然是你用渣浪的产品,就得老实得用他的二级域名啊.

我还是不,终于在论坛上找到了这个:【申精】wsgi中间件实现301重定向 然后想起上次禁用ip访问时用的设置基于主机的访问控制,直接开整.

结果如下:

def filter_middleware(app):
    def _301(environ, start_response):
        DOMAIN_NAME = 'linsir.org'
        if environ['HTTP_HOST'] != DOMAIN_NAME:
            location = 'http://' + DOMAIN_NAME + environ['PATH_INFO']
        if environ.get('QUERY_STRING'):
            location += '?' + environ['QUERY_STRING']
            start_response('301 Moved Permanently', [('Location', location)])
            return []
        else:
            return app(environ, start_response)
    return _301

最后在启动Tornado app应用的时候调用就行了.

application = sae.create_wsgi_app(tornado_app)
application = filter_middleware(application)

# 效果

访问<linsir.sinaapp.com/page/about>自动跳转到<linsir.org/page/about> 301


参考地址:

  1. 在SAE上做301永久重定向跳转的方法
  2. 【申精】wsgi中间件实现301重定向
  3. 设置基于主机的访问控制
  4. How do I redirect domain.com to WWW.domain.com under Django?

--EOF--


>看不到评论?GFW!!!