1.申请HTTPS证书,可以去阿里云申请免费证书,配置完CNAME后一般在一到两天内可以审核完成,审核完成后下载证书,里面包含证书文件(214023961900737.pem)和私钥文件(214023961900737.key),将这两个文件放在服务器/sslcert/目录下。
2.首先确保机器上安装了openssl和openssl-devel
#yum install openssl#yum install openssl-devel
3.修改Nginx的配置文件nginx.conf,在最下面增加以下代码,或者将原有注释内容取消注释,添加HTTPS支持。
server { listen 443; #申请证书的域名 server_name www.baidu.com; ssl on; #证书所存放的位置 ssl_certificate /sslcert/214023961900737.pem; #证书私钥存放的位置 ssl_certificate_key /sslcert/214023961900737.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL; ssl_prefer_server_ciphers on;}
配置已基本完成,重启nginx服务,已经可以用https://www.baidu.com正常访问了。
4.如果需要跳转到相应的tomcat,就需要增加以下配置:
在上述server配置外增加:
upstream test_tomcat { server localhost:9090 max_fails=5 fail_timeout=8s; server localhost:8081 max_fails=5 fail_timeout=8s;}
在上述server配置中增加:
location /test{ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Proto https; root html; index index.html index.htm; proxy_pass http://test_tomcat;}
这时访问https://www.baidu.com/test就会分发到相应的tomcat中,tomcat无法修改任何配置信息,即可实现https访问。