生成免费ssl证书:
openssl req -x509 -newkey rsa:2048 -nodes -sha256 -keyout localhost-privkey.pem -out localhost-cert.pem

nginx配置
proxy_cache_path cache levels=1:2 keys_zone=my_cache:10m;
server {#由http跳转到https
listen 80 default_server;
listen [::]:80 default_server;
server_name test.com;
return 302 https://$server_name$request_uri;
}
server {
listen 443;
server_name test.com;
ssl on;
ssl_certificate_key /usr/local/etc/nginx/certs/localhost-privkey.pem;
ssl_certificate /usr/local/etc/nginx/certs/localhost-cert.pem;
location / {
proxy_cache my_cache;
proxy_pass http://127.0.0.1:8888;
proxy_set_header Host $host; #nginx对http请求的host进行转发
}
}
此时,无论访问http://test.com/还是https://test.com/都会跳转到https

网友评论