nginx使用scheme配置http重定向到https

post by rocdk890 / 2017-12-15 16:30 Friday linux技术
相信现在很多朋友都已经在使用ssl证书来配置网站了,但由于http和https共存在一个配置文件里,很多人都想访问http的时候直接跳转到https,下面来看配置文件:
cat /etc/nginx/conf.d/www.slogra.com.conf
server {
        listen  80;
        listen  443 ssl;
        server_name www.slogra.com;
        root   /data/www/;
        index  index.php index.htm index.html;

	ssl on;
    ssl_certificate      www.slogra.com_bundle.crt;
    ssl_certificate_key  www.slogra.com.key;
	ssl_session_cache    shared:SSL:10m;
    ssl_session_timeout  10m;
	ssl_protocols       TLSv1 TLSv1.1 TLSv1.2;
	ssl_ciphers "EECDH+CHACHA20 EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";
    ssl_prefer_server_ciphers  on;

         location ~ \.php($|/) {
            fastcgi_pass  127.0.0.1:9000;
            fastcgi_split_path_info  ^(.+\.php)(/.*)$;
            fastcgi_param  PATH_INFO $fastcgi_path_info;
	    fastcgi_ignore_client_abort on;
            proxy_ignore_client_abort on;
            fastcgi_index  index.php;
            include  fastcgi.conf;
        }

	location ^~ /minipqiaqia/ {
            proxy_pass   http://127.0.0.1:8888/minipqiaqia/;
            proxy_redirect  off;
            proxy_set_header  X-Real-IP $remote_addr;
            proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        }

	location /verification/ {
	    if ($scheme = "http") {
		return 301 https://$server_name$request_uri;
	    }
	    proxy_pass http://127.0.0.1:8800/;
	}
}


可以看到我把verification这个目录做了http跳转到https上,有兴趣的朋友可以自己去研究.
夜空- 本站版权
1、本站所有主题由该文章作者发表,该文章作者与夜空享有文章相关版权
2、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和夜空的同意
3、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
4、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
5、原文链接:blog.slogra.com/post-714.html

标签: nginx ssl 跳转 重定向 301 schema

评论: