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;…
}