使用https代替http
1、http模式下nginx配置
upstream django {
server 127.0.0.1:9090;
}
server {
listen 80;
server_name localhost;
charset utf-8;
access_log /root/xxx/logs/nginx_access.log;
error_log /root/xxx/logs/nginx_error.log;
client_max_body_size 80m;
location / {
include /etc/nginx/uwsgi_params;
uwsgi_pass django;
}
location /static {
alias /root/scanweb/collectstatic;
}
location /upload {
alias /root/scanweb/files;
}
}
2、https模式下nginx配置
注意:需要防火墙开放443端口
添加内容:
ssl on;
ssl_certificate /root/CHSmpSrc/keycer/certificate.crt; # 证书文件存放路径
ssl_certificate_key /root/CHSmpSrc/keycer/private.key; # 秘钥文件存放路径
完整示例:
upstream django {
server 127.0.0.1:9090;
}
server {
listen 443 ssl;
ssl on; #开启ssl证书认证
ssl_certificate /root/CHSmpSrc/keycer/certificate.crt; # 证书文件存放路径
ssl_certificate_key /root/CHSmpSrc/keycer/private.key; # 秘钥文件存放路径
server_name localhost;
charset utf-8;
access_log /root/xxx/logs/nginx_access.log;
error_log /root/xxx/logs/nginx_error.log;
client_max_body_size 80M;
location /media {
alias /root/CHSmpSrc/smpauthensrc/media;
}
location / {
include /etc/nginx/uwsgi_params;
uwsgi_pass django;
}
}
3、使80端口的http请求永久地重定向至https(既开放80端口又开放443端口)
upstream django {
server 127.0.0.1:9090;
}
server {
listen 443 ssl;
server_name localhost;
access_log /data/xxx/access.log;
keepalive_timeout 60;
ssl on; #开启ssl证书认证
# 证书路径,根据实际情况改写
ssl_certificate /root/CHSmpSrc/keycer/certificate.crt; # 证书文件存放路径
ssl_certificate_key /root/CHSmpSrc/keycer/private.key; # 秘钥文件存放路径
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
# 禁止在header中出现服务器版本,防止黑客利用版本漏洞攻击
server_tokens off;
location / {
include /etc/nginx/uwsgi_params;
uwsgi_pass django;
}
}
server {
# nignx监听80端口,并重定向到https
listen 80;
server_name localhost;
# 把http的域名请求转成https
return 301 https://$host$request_uri;
}
博客内容仅供参考,部分参考他人优秀博文,仅供学习使用
标签:
部署
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2018-12-11 Django框架(十九)—— drf:序列化组件(serializer)
2018-12-11 C语言——指针
2018-12-11 Django框架(十八)—— CBV源码分析、restful规范、restframework框架