Django+uwgis+nginx配置及http转发https
497错误重定向
nginx配置:
server {
listen 80; #或监听ip:80
listen 443 default ssl;#或监听ip:443
server_name yunso.xyz
charset UTF-8;
access_log /var/log/nginx/search_access.log;
error_log /var/log/nginx/search_error.log;
error_page 497 https://yunso.xyz:443; #捕获497代码并跳转到https 无法跳转时使用监听ip:端口
ssl on; #返回497代码
ssl_certificate /usr/local/nginx/ssl/1_yunso.xyz_bundle.crt; #ssl的crt地址
ssl_certificate_key /usr/local/nginx/ssl/2_yunso.xyz.key; #ssl的key地址
client_max_body_size 75M;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000;
uwsgi_read_timeout 2100s;
}
location /static {
expires 30d;
autoindex on;
add_header Cache-Control private;
alias /home/django/search/app/static/;
}
}
注意问题:样式文件需要设置为本地路径,远程路径导致样式无法加载
497重写路由规则
server {
listen 80;
server_name my.domain.com;
return 301 https://$server_name$request_uri; #新版本
rewrite ^ https://$host$request_uri? permanent;#旧版本
}
server {
listen 443 ssl;
server_name my.domain.com;
# add Strict-Transport-Security to prevent man in the middle attacks add_header Strict-Transport-Security "max-age=31536000"; [....]
}
错误497重定向
error_page 497 https://$host:$server_port$request_uri;