我最终喜欢 www.ww.mywebsite.com/ 带有谷歌搜索结果的网址,
我在谷歌群组中询问,他们指出很明显,www.ww.mywebsite.com 不应该是 200 好的响应。
(r'^$', myview)
,这就是我获取主页网址的方式,
我不认为这个问题是由于我的 url 模式导致的,据我所知,用于捕获尾随单词的 url 模式。www.wwww.example.com/test/,会有“测试”作为我们要处理的词,我的网站名称之前的这个 wwww 员工呢?
我最终喜欢 www.ww.mywebsite.com/ 带有谷歌搜索结果的网址,
我在谷歌群组中询问,他们指出很明显,www.ww.mywebsite.com 不应该是 200 好的响应。
(r'^$', myview)
,这就是我获取主页网址的方式,
我不认为这个问题是由于我的 url 模式导致的,据我所知,用于捕获尾随单词的 url 模式。www.wwww.example.com/test/,会有“测试”作为我们要处理的词,我的网站名称之前的这个 wwww 员工呢?
在完全限定的 URLwww.example.com/test/
中,Django URL 匹配只查看/test/
部分。在这里,您需要过滤引入了ALLOWED_HOSTS设置的域名。例如,您可以输入settings.yml
:
ALLOWED_HOSTS = ['mywebsite.com', 'www.mywebsite.com']
或者,您可以使用自定义中间件将用户重定向到规范 URL。如果用户仍然可以访问非规范 URL,这是一个更好的解决方案:
class CanonicalDomainRedirectMiddleware(object):
def process_request(self, request):
if request.get_host() == 'mywebsite.com':
return None
if request.is_secure():
protocol = 'https'
else:
protocol = 'http'
return HttpResponsePermanentRedirect('%s://%s/%s' % (
protocol, 'mywebsite.com', request.get_full_path)