Django建站历程:(十四)配置SSL证书实现网站HTTPS访问

2019年3月1日 Jerry 9786 2021年1月17日

关于nginx + uwsgi + django部署请点击  这里  查看更多。

本网站一直是http的80端口访问,会出来各种不安全的提示:

jerrycoding Django建站历程:(十四)配置SSL证书实现网站HTTPS访问

这看起来很让人不爽,于是博主去阿里云搞了个免费的SSL证书,配置了下HTTPS的访问。

1、登陆阿里云申请免费的SSL证书:

     点击这里 进入阿里云网站,购买免费的SSL证书

jerrycoding Django建站历程:(十四)配置SSL证书实现网站HTTPS访问

     进入阿里云控制台可以看到我们购买的SSL证书,点击申请填写相关信息,提交审核即可。

jerrycoding Django建站历程:(十四)配置SSL证书实现网站HTTPS访问

      审核通过后,已签发就可以看到,点击下载,选择你的服务器类型,我这里是nginx。

jerrycoding Django建站历程:(十四)配置SSL证书实现网站HTTPS访问

     最后得到的两个文件( *.key  *.pem )就是要用的。

2、Nginx加载证书

     进入nginx安装目录,创建一个cert文件夹,将我们下载的两个文件放进去。

root@jerry:/etc/nginx/cert# ls
jerrycoding.key  jerrycoding.pem

     修改之前nginx的配置文件,具体格式内容如下:

server {
        listen 443 ssl;   //https端口为443
        server_name  example.com;

        ssl on; #开启ssl
        ssl_certificate      cert/*.pem;     #pem 位置
        ssl_certificate_key  cert/*.key;     #key 位置
        ssl_session_timeout  5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 

        #密码加密方式
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; 
        ssl_prefer_server_ciphers  on;     #依赖SSLv3和TLSv1协议的服务器密码将优先于客户端密码

        location / {
            root   html;      #web文件存储位置
            index  index.html index.htm;
        }
}

#配置80端口重定向到https 443
server {
       listen 80;
       server_name example.com;
       rewrite ^(.*)$  https://$host$1 permanent;
}

3、重启nginx服务

执行以下命令重启nginx服务即可:

root@jerry: nginx -t // 检查nginx配置文件
root@jerry: nginx -s reload // 使配置生效
root@jerry: service nginx stop // 停止
root@jerry: service nginx start // 启动
root@jerry: service nginx restart // 重启

最后,我们访问下我们的网站。https起飞,输入http的网站也会自动跳转到https:

jerrycoding Django建站历程:(十四)配置SSL证书实现网站HTTPS访问

如果访问超时,记得检查阿里云的安全组有没有放通443端口哦~


《django 建站历程系列文章》

(一)服务器的选取与环境准备

(二)创建第一个project和app

(三)创建并显示博客的主页导航栏

(四)django-allauth实现用户登陆

(五)django-allauth实现第三方登陆

(六)使用bootstrap3美化登陆界面

(七)添加用户签名字段

(八)自定义用户头像

(九)发布我的第一篇博客

(十)CKEditor的配置使用

(十一)ajax实现文章添加评论

(十二)signal自动消息通知

(十三)基于django-haystack的全文搜索

(十四)配置SSL证书实现网站HTTPS访问

(十五)免费开启七牛云CDN加速

(十六)particles 粒子背景插件

(十七)集成 xadmin2 后台管理

(十八)RestFramework 编写API

(十九)Nginx+uwsgi 部署 django

(二十)自定义网站404界面

(二一)jwt为API添加身份认证

jerrycoding 博客源码大公开


原创文章,转载请注明出处: https://jerrycoding.com/article/site_building_14

微信
jerry微信赞助
支付宝
jerry支付宝赞助

您尚未登录,暂时无法评论。请先 登录 或者 注册

0 人参与 | 0 条评论