ssl - http 的url 自动跳转到https 上。的配置方法(nginx)
访问量: 1623
参考:https://stackoverflow.com/questions/7947030/nginx-no-www-to-www-and-www-to-no-www
这样写就可以:
server { listen 80; listen [::]:80; server_name www.your_site.io your_site.io; return 301 https://$server_name$request_uri; } # 下面就是 server 443 的配置。。。
如果希望所有的 @.a.com 都跳转到 www.a.com , 就这样:
# 所有的 @ 都跳转到 www 域名 server { listen 443; server_name xx.com xx.com.cn; return 301 https://www.xx.com$request_uri; }
注意:
有的url不能直接跳转,例如 RESTful 资源,上面的跳转从 POST 会变成GET ,这是不行的。
所以要暂时:
server { listen 80; listen [::]:80; server_name www.cadae.top cadae.top; # return 301 https://$server_name$request_uri; location / { return 301 https://$server_name$request_uri; } location /interface { proxy_pass http://cadxx_servers; # 这里就是你的后端服务器的proxy # proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_next_upstream http_502 http_504 error timeout invalid_header; } }