实现访问http 自动跳转到https


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下的任意文件


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM