今天summerdawn重新备案成功,并开启https,网站进入新阶段。
1.开启https,主要是在nginx配置文件下修改server设置,如下:
listen 443 ssl;
#请填写证书文件的相对路径或绝对路径/etc/nginx/ssl/summerdawn.top_bundle.crt
ssl_certificate /etc/nginx/ssl/summerdawn.top_bundle.crt;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key /etc/nginx/ssl/summerdawn.top.key;
ssl_session_timeout 5m;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
再此之前,需要申请免费ssl证书上传到服务器,本项目在nginx配置文件下增设ssl路径。
2.其次需要根据ssl免费证书的要求增加cname解析,此详见申请免费证书的使用说明。
3.还需要将七牛云存储升级为https。该升级导致cdn免费的10G流量不可用,痛失银子。该升级也需要提供对应域名的ssl免费证书,与前面的不同,因为免费的证书绑定了域名。
4.避免Django的csrf错误,https与http并不是同一个域,因此猜测是开启了https的问题,解决办法如下:配置文件,添加如下代码,需要在配置文件中添加反向代理设置
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
5.为了彻底采用https,将http访问重定向
server {
listen 80;
#请填写绑定证书的域名
server_name summerdawn.top;
#把http的域名请求转成https
return 301 https://$host$request_uri;
#rewrite ^(.*)$ https://$host$1 permanent;
}
6.每次修改配置,需要运行配置文件测试与重载命令。
在nginx配置文件路径下/etc/nginx,运行如下命令:
root@VM-8-13-ubuntu:/etc/nginx# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
root@VM-8-13-ubuntu:/etc/nginx# nginx -s reload
Last Modified·2024年4月3日 18:11
您尚未登录,请先登录才能评论。