Nginx http重定向到https
跳到导航
跳到搜索
301强制重定向
#注意 是加在 ssl cer 后面 ,加在 前面 可能当作 是 80的 不生效呢 #4 blog server { listen 80; # listen [::]:80 ipv6only=on default_server; listen 443 default ssl; #listen [::]:80; #ssl on; ssl_certificate /etc/letsencrypt/live/linuxchina.net/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/linuxchina.net/privkey.pem; server_name linuxchina.net www.linuxchina.net; #by evan if ($scheme = http) { return 301 https://$server_name$request_uri; } #by evan # server_name blog.linuxchina.net; charset utf-8; root /data/www/evan; index index.php index.html index.htm; #简约格式 server { listen 80; ... return 301 https://$server_name$request_uri; } server { listen 443; ... }
my eg
server { listen 80; listen [::]:80; #listen 443 ssl http2; #listen [::]:443 ssl http2; server_name www.cai.net cai.net; # return 301 https://www.cai.net$request_uri; rewrite ^(.*)$ https://$host$1 permanent; } server { listen 443 ssl http2; listen [::]:443 ssl http2; # listen 443 ssl; server_name www.cai.net cailu.net; # if ( $host = 'www.cai.net' ) { # rewrite ^/(.*)$ https://www.cai.net/$1 permanent; # } #这个是不写多了呢 if ( $host = 'cai.net' ) { rewrite ^/(.*)$ https://www.cai.net/$1 permanent; }
host.com跳https:
server { listen 80; server_name xnathan.com www.xnathan.com; return 301 https://xnathan.com$request_uri; }
www 跳转非 www
if ($host = 'www.xxx.com' ) { rewrite ^/(.*)$ http://xxx.com/$1 permanent; }
rewrite方法
server { listen 192.168.1.111:80; server_name test.com; rewrite ^(.*)$ https://$host$1 permanent; }