Django配置Https访问

《图解HTTP》这本书中曾提过HTTPS是身披SSL外壳的HTTP。HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。
PS:TLS是传输层加密协议,前身是SSL协议,由网景公司1995年发布,有时候两者不区分。

http vs https

无状态:协议对客户端没有状态存储,对事物处理没有“记忆”能力,比如访问一个网站需要反复进行登录操作
无连接:HTTP/1.1之前,由于无状态特点,每次请求需要通过TCP三次握手四次挥手,和服务器重新建立连接。比如某个客户机在短时间多次请求同一个资源,服务器并不能区别是否已经响应过用户的请求,所以每次需要重新响应请求,需要耗费不必要的时间和流量。
基于请求和响应:基本的特性,由客户端发起请求,服务端响应
简单快速、灵活
通信使用明文、请求和响应不会对通信方进行确认、无法保护数据的完整性

问题解决

问题分析

出现该问题大概就是解决http与https两个页面与请求之间不互通的问题咯

解决方案 1

撤销服务器ssl证书,恢复http访问,但是这对于一个企业来说是不现实的。

解决方案2

增加django的https访问

实际操作

参考了 https://www.cnblogs.com/kusy/p/9560458.html

1.下载创建ssl证书的工具
本地下载
链接: https://pan.baidu.com/s/1JDVMWit0CFLkgdVFX3K-Ag 提取码: ft5u 复制这段内容后打开百度网盘手机App,操作更方便哦
2. 解压
将下载的压缩包文件上传至服务器,解压到自己想存放的路径。
3. 配置
解压后找到解压目录的bin文件件,找到openssl.exe文件,双击打开指令窗口,输入如下指令进行配置,每执行一条指令,均需要配置相关参数,随意填写均可

genrsa -des3 -out server.key 2048
req -new -key server.key -out server.csr -config openssl.cnf
rsa -in server.key -out server_no_passwd.key
x509 -req -days 365 -in server.csr -signkey server_no_passwd.key -out server.crt

此时就会在bin目录下生成了对应的crt证书文件。
在这里插入图片描述
至此,自签名ssl证书创建完成。
4. django配置
下载配置ssl证书所需模块

pip3 install django-extensions
pip3 install django-werkzeug-debugger-runserver
pip3 install pyOpenSSL

配置INSTALLED_APPS 新增
‘werkzeug_debugger_runserver’,
‘django_extensions’,

INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘myapp’,
‘corsheaders’,
‘werkzeug_debugger_runserver’,
‘django_extensions’,
]

验证

重启服务

启动指令不再是

python manage.py runserver 0.0.0.0:8000

而是

python manage.py runserver_plus --cert server.crt 0.0.0.0:8000

请求验证

发起请求
在这里插入图片描述
到此,问题得以解决。。。

我是小菜鸡,不喜勿喷,如果描述错误的地方,欢迎各位大佬留言指正谢谢!!!

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Go语言工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Go语言全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Golang知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Go)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

)**
[外链图片转存中…(img-w17CWZJ2-1712866574639)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值