我有一个可以发布帖子的工作登录模板,如下所示:
<form action="" method="post">
{% csrf_token %}
<br>
{{form.email}}
<div class="text-center">
<button type="submit">Login</i></button>
</div>
</form>
我的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,请 重新启用它们,至少对于此站点,或“同源”请求。
有谁知道为什么会这样?
答案 0 :(得分:1)
我必须有陈旧的cookie。当我进入Chrome隐身模式时,所有功能都可以实现200响应。
感谢您的帮助
答案 1 :(得分:0)
禁止(403) CSRF验证失败。请求中止。
您正在看到此消息,因为此站点在提交表单时需要CSRF cookie。出于安全原因,此cookie是必需的,以确保您的浏览器不会被第三方劫持。
如果您已将浏览器配置为禁用cookie,请至少对本网站或“同源”请求重新启用它们。
DEBUG = True可提供更多信息。