Nginx代理本地HTTPS

首先,使用openssl生成证书,执行以下3条命令(按照提示输入信息即可)。需要说明的是,以下示例中,命令执行的操作系统位置为:D:/ssl/verify,nginx中的配置,请自行调整为你自己的操作系统位置。

openssl req -new -nodes -newkey rsa:2048 -keyout server.key -out server.csr 
openssl req -new -x509 -key server.key -out ca.crt -days 3650
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial -out server.crt

新增hosts映射,以windows为例,C:/Windows/System32/drivers/etc/hosts配置

127.0.0.1  ssl.52study.com

配置nginx,在nginx的conf目录下,新建vhosts_conf/vhosts_ssl_dev.conf配置文件。未关注过 Nginx配置代理多个服务及伪集群实现 的小伙伴,有兴趣可以先行了解一下,这里直接贴相关配置,需要说明的是,此处示例中的端口为:8888,请自行调整为你自己的服务端口。

upstream ssl.52study.com {
	server 127.0.0.1:8888 weight=1;
}

server {
	listen       80;
	server_name  127.0.0.1;
	rewrite ^(.*)$ https://$host$1 permanent;
}
server {
	listen       443;
	server_name  127.0.0.1;
	ssl          on;
	ssl_certificate D:/ssl/verify/server.crt;
	ssl_certificate_key D:/ssl/verify/server.key;
	ssl_session_timeout 5m;
	ssl_protocols TLSv1;
	ssl_ciphers  HIGH:!aNULL:!MD5;
	ssl_prefer_server_ciphers   on;
	location / {
		client_max_body_size    16m;
		client_body_buffer_size 128k;
		proxy_pass              http://ssl.52study.com;
		proxy_set_header        Host $host;
		proxy_set_header        X-Real-IP $remote_addr;
		proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header        X-Forwarded-Proto $scheme;
		proxy_set_header        X-Forwarded-Port $server_port;
		proxy_next_upstream     off;
		proxy_connect_timeout   30;
		proxy_read_timeout      300;
		proxy_send_timeout      300;
	}
}

引入至nginx.conf

http {
	...
	
	include vhosts_conf/vhosts_ssl_dev.conf;
	
	...
}

浏览器访问https://ssl.52study.com,即可访问你的项目了,需要注意的是,浏览器会提示该网站不安全,确定前往不安全的网站即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值