https是更安全的http,通過http自動跳轉https,可以更便于用戶使用web。
有幾下幾個方法可以完成跳轉:
1.打開http和https的server,讓http跳轉到https
server { ? ? listen 80; ? ? listen [::]:80; ? ? return 301 https://$host$request_uri; } server { ? ? listen 443 ssl; ? ? listen [::]:443 ssl; ? ? ssl_certificate ? ? ? ? certificate_file_path; ? ? ssl_certificate_key ?certificate_key_file_path; ? ? ... }
2.不打開http的server,直接在https的server里完成跳轉,以下三種方式都可以
server { ? ? if ($server_port = 80 ) ?? ? ? #if ($scheme = http ) ? ? #if ($ssl_protocol = "") ? ? { ? ? ? ? return 301 https://$host$request_uri; ? ? } ? ?? ? ? listen 443 ssl; ? ? listen [::]:443 ssl; ? ? ssl_certificate ? ? ? ? certificate_file_path; ? ? ssl_certificate_key ?certificate_key_file_path; ? ? ... }