1. 程式人生 > 其它 >nginx http跳轉到https

nginx http跳轉到https

  1. 修改nginx配置檔案"nginx.conf"

  2. 找到"server"結點

  3. 如將80埠http跳轉到443埠時使用如下方式:

server {
	listen       80;
	listen       [::]:80;
	server_name  server_name;
	
	return 301 https://$http_host$request_uri; #第一種方式:(推薦)
	rewrite ^(.*) https://$server_name$1 permanent; #第二種方式
	error_page 497 https://$host:8080$request_uri; #第三種方式,重新定義埠

	error_page 404 /404.html;
	location = /404.html {
	}

	error_page 500 502 503 504 /50x.html;
	location = /50x.html {
	}
}
  1. 如https埠為其它埠,需要原埠http跳轉為https使用如下方式:
server {
	listen 8888 ssl http2; 
	server_name server_name_ssl;
	ssl_certificate /home/ssl/rsa.pem;
	ssl_certificate_key /home/ssl/rsa.key;
	ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
	ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #表示使用的TLS協議的型別。
	ssl_prefer_server_ciphers on;

	error_page 497 301 =307 https://$host:$server_port$request_uri; #如https為特殊埠時可使用此方式客戶端訪問http時自動為https
    
	root         /usr/share/nginx/html;

	error_page 404 /404.html;
	location = /404.html {
	}

	error_page 500 502 503 504 /50x.html;
	location = /50x.html {
	}
}