转换到负载均衡器后,django帖子收到CSRF验证失败

时间:2018-01-26 19:55:46

标签: django cookies load-balancing csrf elastic-load-balancer

我有一个可以发布帖子的工作登录模板,如下所示:

<form action="" method="post">
            {% csrf_token %}
              <br>
                  {{form.email}}


              <div class="text-center">
                <button type="submit">Login</i></button>
              </div>

            </form>

我的SSL设置如下:

SSL

SECURE_SSL_REDIRECT = False
SECURE_HSTS_SECONDS = 3600
SESSION_COOKIE_SECURE = False
SECURE_PROXY_SSL_HEADER = None
CSRF_COOKIE_SECURE = False

我做了两处修改。我切换到aws ec2弹性负载均衡器,从https到http。

现在我收到一个错误:

  

禁止(403)CSRF验证失败。请求中止。

     

您看到此消息是因为此站点需要CSRF cookie   提交表格时。出于安全原因,此cookie是必需的,   确保您的浏览器不被第三方劫持。

     

如果您已将浏览器配置为禁用Cookie,请   重新启用它们,至少对于此站点,或“同源”请求。

有谁知道为什么会这样?

2 个答案:

答案 0 :(得分:1)

我必须有陈旧的cookie。当我进入Chrome隐身模式时,所有功能都可以实现200响应。

感谢您的帮助

答案 1 :(得分:0)

禁止(403) CSRF验证失败。请求中止。

您正在看到此消息,因为此站点在提交表单时需要CSRF cookie。出于安全原因,此cookie是必需的,以确保您的浏览器不会被第三方劫持。

如果您已将浏览器配置为禁用cookie,请至少对本网站或“同源”请求重新启用它们。

DEBUG = True可提供更多信息。