本文記錄的使用環境為 centOS7.2系統,Nginx1.10.1, tomcat8.5
nginx已經實現 https
試了好幾次終於成功,Nginx實現了 SSL ,那么tomcat就不需要再配置 SSL 了,在這里我取消了原來tomcat的SSL配置。
一、首先修改/usr/local/nginx/conf下的nginx.conf文件,在http 域下增加,綠色部分為主要部分。注意是在 433端口
#服務器集群,可以增加多個 upstream tomcat1 { server 127.0.0.1:8080; } server{ #監聽443端口 listen 443; #對應的域名,把baofeidyz.com改成你們自己的域名就可以了,我這里用localhost是一樣的 server_name localhost; ssl on; #從騰訊雲獲取到的第一個文件的全路徑 ssl_certificate /etc/ssl/1_www.project.cn_bundle.crt; #從騰訊雲獲取到的第二個文件的全路徑 ssl_certificate_key /etc/ssl/2_www.project.cn.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
#這是我的主頁訪問地址,因為使用的是靜態的html網頁,所以直接使用location就可以完成了。
location / {
#文件夾 root /usr/local/nginx/html;
#主頁文件 index index.html;
}
#這個是匹配你訪問的某個項目 location /project/ { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Proto https; proxy_redirect off; proxy_connect_timeout 240; proxy_send_timeout 240; proxy_read_timeout 240; # note, there is not SSL here! plain HTTP is used proxy_pass http://tomcat1; #修改配置,與上面tomcat1一致 } }
2、修改tomcat配置文件
redirectPort改為443,並增加proxyPort="443"
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" proxyPort="443" />
redirectPort改為443
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
重啟 tomcat 和 nginx 即可
參考 https://segmentfault.com/a/1190000016584420?utm_source=tag-newest
現在好的博文越來越少,這 篇對我幫助很大。