1、使用rewrite指令
| | server { | | listen 80; | | server_name domain.com; | | rewrite ^(.*) https: | | | | #或 | | #rewrite ^(.*) https: | | #或 | | #rewrite ^(.*) https: | | } |
|
2、使用return指令
| | server { | | listen 80; | | | | #常见的301跳转设置3种方法 | | server_name domain.com; | | return 301 https: | | | | #if ($scheme = http ) { | | # return 301 https: | | #} | | | | #if ($server_port = 80 ) { | | # return 301 https: | | #} | | | | } |
|
3、使用error_page指令
| | server { | | listen 80; | | listen 443 ssl; | | server_name domain.com; | | ssl on; | | ssl_certificate /etc/nginx/ssl/xxxxx.crt; | | ssl_certificate_key /etc/nginx/ssl/xxxxx.crt; | | | | error_page 497 https: | | } |
|
使用error_page指令时,将http和https的监听配置写在同一个server块中,对应的其他配置也需要在该server配置块中完成。
需要注意的是,此时需要将error_page
指令语句写在最后,否则不能生效。