Nginx 自动跳转到HTTPS Nginx设置http自动跳转https SSL配置
1.方法一
- rewrite ^(.*)$ https://$host$1 permanent;
复制代码
2.方法二
适用于 80端口和443 配置在同一个 server{}内
- if ($server_port = 80) {
- rewrite ^(.*)$ https://$host$1 permanent;
- }
复制代码
其他情况, 站点绑定很多域名,只让某个域名跳转:
- set $redirect_https 1;
- if ($server_port = 80) {
- set $redirect_https "${redirect_https}2";
- }
- if ($http_host = 'www.yourdomain.com') {
- set $redirect_https "${redirect_https}3";
- }
- if ($http_host = 'yourdomain.com') {
- set $redirect_https "${redirect_https}3";
- }
-
- if ($redirect_https = "123") {
- rewrite ^(.*)$ https://$host$1 permanent;
- }
复制代码
示例
- server {
- listen 80;
- server_name www.getssl.cc;
- rewrite ^ https://$http_host$request_uri? permanent;
- }
-
- server {
- listen 443;
- ssl on;
- ssl_certificate /etc/ssl/cacert.pem;
- ssl_certificate_key /etc/ssl/privkey.pem;
- server_name www.getssl.cn;
-
-
- server_tokens off;
-
- location / {
-
- fastcgi_param HTTPS on;
- fastcgi_param HTTP_SCHEME https;
-
- }
-
- }
复制代码
|