Django网站域名发生迁移变更时,如何告知搜索引擎?
这时需要使用301重定向,把通过旧域名URL访问站点的用户引导至新的域名。
301 Moved Permanently是服务器返回的HTTP头信息(header)中的状态码的一种。当用户或搜索引擎向网站服务器发出浏览请求时,返回301状态码代表网页永久性地迁移到了另一个URL。
例如,网站迁移到了新的域名:www.example.com,修改wsgi.py,在尾部添加如下代码:
import django.core.handlers.wsgi
_application = django.core.handlers.wsgi.WSGIHandler()
DOMAIN_NAME = 'www.example.com'
def application(environ, start_response):
if environ['HTTP_HOST'] != DOMAIN_NAME:
location = DOMAIN_NAME + environ['PATH_INFO']
if environ.get('QUERY_STRING'):
location += '?' + environ['QUERY_STRING']
start_response('301 Redirect', [('Location', location),])
return []
return _application(environ, start_response)
使用旧域名访问时,返回结果如下:
Request Method: GET
Status Code: 301 MOVED PERMANENTLY
本文链接:https://bookshadow.com/weblog/2014/04/21/django-301-redirect/
请尊重作者的劳动成果,转载请注明出处!书影博客保留对文章的所有权利。
如果这篇博客对你有帮助,请支持书影博客
你的捐赠将用于服务器与域名费用,帮助免费技术内容持续更新。
支付宝
微信
建议金额:¥5 / ¥10 / ¥20 / ¥50(扫码后自行输入)