ngx_http_rewrite_module模塊:
將用戶請求的URI基於PCRE regex所描述的模式進行檢查,而后完成重定向替換
一、使用if判斷,通過return,將http跳轉到https
vim /etc/nginx/conf.d/test.conf
server { listen 443 ssl; listen 80; server_name www.a.net; root /data/site1/; ssl_certificate /etc/nginx/ssl/www.a.net.crt; ssl_certificate_key /etc/nginx/ssl/www.a.net.key; ssl_session_cache shared:sslcache:20m; ssl_session_timeout 10m; access_log /var/log/nginx/a.net.log443 main; location / { if ( $scheme = http ){ return 301 https://www.a.net/; } } }
二、rewrite
server {
listen 443 ssl;
listen 80;
server_name www.a.net;
root /data/site1/;
ssl_certificate /etc/nginx/ssl/www.a.net.crt;
ssl_certificate_key /etc/nginx/ssl/www.a.net.key;
ssl_session_cache shared:sslcache:20m;
ssl_session_timeout 10m;
access_log /var/log/nginx/a.net.log443 main;
location / {
if ( $scheme = http ) {
rewrite ^/(.*)$ https://www.a.net/$1 redirect;
}
}
}
當訪問的是http下的任意文件,自動跳轉到https下的任意文件