【问题标题】:Django - redirect to version with wwwDjango - 使用 www 重定向到版本
【发布时间】:2011-10-24 00:06:56
【问题描述】:

在 Django 中,是否有一种简单的方法可以将所有内容从没有 www 的域重定向到有它的版本?我的意思是从 http://example.com 到 http://www.example.com。

【问题讨论】:

    标签: python django redirect dns


    【解决方案1】:

    【讨论】:

    【解决方案2】:

    正如docs所说

    如果 PREPEND_WWW 为 True,则缺少前导“www”的 URL。将被重定向到以“www”开头的相同 URL。

    默认情况下,PREPEND_WWW 设置为 False。您可以在设置中将其更改为 True。

    PREPEND_WWW = True
    

    要完成这项工作,您必须在中间件中包含 CommonMiddleware

    MIDDLEWARE_CLASSES = (
        'django.middleware.common.CommonMiddleware',
    )
    

    【讨论】:

    • 这最初看起来是一个很好的解决方案,但我很快发现了 PREPEND_WWW 的各种限制,并采用了服务器级别的解决方案。 stackoverflow.com/questions/41792064/…
    • 这应该是公认的答案。如果你没有设置 CommonMiddleware 什么都不会发生。
    【解决方案3】:

    您也可以通过正确的 DNS 配置跳过前缀。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-13
      • 1970-01-01
      • 2011-04-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多