首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更新后无法登录Django管理:发出错误禁止(403) CSRF验证失败

更新后无法登录Django管理:发出错误禁止(403) CSRF验证失败
EN

Stack Overflow用户
提问于 2022-04-13 12:34:43
回答 1查看 813关注 0票数 -1

在更新Django版本后,当我试图登录到Django管理时,我遇到了错误Forbidden (403) CSRF verification failed。此外,Django的设置也没有变化。

在下面的图像中可以看到这个错误:

EN

回答 1

Stack Overflow用户

发布于 2022-04-13 12:42:00

我已经把它发到https://shriekdj.hashnode.dev/unable-to-login-django-admin-after-update-giving-error-forbidden-403-csrf-verification-failed-request-aborted上了。

在更新到Django的更新版本之后,这个问题可能会突然发生。

详细信息

Django Project对所有Django版本4.0及更高版本的安全性需求进行了一些更改。他们强制创建一个URL列表,以便在命名为CSRF_TRUSTED_ORIGINS.的项目设置中获取任何类型的表单上载或发布请求。他们没有更新最新教程文档中的细节,但他们在https://docs.djangoproject.com/en/4.0/releases/4.0/#csrf-trusted-origins-changes-4-0.

上发布了“更改说明”。

第一解

表示localhost127.0.0.1。最后创建一个新的URL列表,如下所示,如下所示

代码语言:javascript
运行
复制
CSRF_TRUSTED_ORIGINS = ['http://*', 'https://*']

如果您在本地主机中运行一个项目,那么您应该打开这里的所有URL,*符号意味着所有URL。而且,http://是强制性的。

第二解

也适用于Localhost和DEBUG=True。将ALLOWED_ORIGINS的列表复制到CSRF_TRUSTED_ORIGINS中,如下所示.

代码语言:javascript
运行
复制
ALLOWED_ORIGINS = ['http://*', 'https://*']
CSRF_TRUSTED_ORIGINS = ALLOWED_ORIGINS.copy()

第三解

部署时,必须添加URL以允许表单上载(发出任何POST请求)。

我知道这可能很棘手,也很费时,但现在是强制性的。

此外,这是强制性的在线IDE,也像复制和故障。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71857585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档