前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于Django上线后的CSRF问题

关于Django上线后的CSRF问题

作者头像
TomatoCool
发布2023-07-30 17:13:34
1830
发布2023-07-30 17:13:34
举报
文章被收录于专栏:TomatoCoolTomatoCool

首先在宝塔上安装Python项目管理器,采用如下配置,能够快速搭建Django项目。

1.png
1.png

然后进行映射域名,启动项目,发现只要含有表单的页面都出现CSRF错误的信息。由于Django的防CSRF是默认开启的,所以如果表单内没有添加{% csrf_token %}会导致报错。

2.png
2.png

对于CSRF报错,最简单的方法就是注释掉上面的代码,然后所有的表单都不添加{% csrf_token %}。但这又会引出一个新问题,因为Django系统自带的admin应用是包含{% csrf_token %}的,所以还要改系统生成的代码会十分麻烦。 如果你按照正常的流程搭建网站,出现CSRF报错,可能是你开启了SSL,也就是https,这里牵扯到一个跨域的问题。 {% csrf_token %}就是为了防止跨域请求的,而https与http并不是同一个域(可以去搜索跨域相关的知识),因此猜测是开启了https的问题,解决办法如下: 打开站点设置->反向代理->配置文件,添加如下代码:

3.png
3.png

重启服务器,问题解决。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022 年 12 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档