登陸認證account.free4lab.com須要提供ssl登陸接口,ssl的原理看這篇博文,由於前面有反向代理nginx,因此這個需求就放在nginx實現了,不然能夠放在web容器(jetty,tomcat)上實現,如何在容器實現ssl部署能夠看以前的一篇博文linux tomcat配置httpshtml
步驟:linux
1.生成一個權威的ssl證書對(若是本身頒發的話,那麼https是不被瀏覽器承認的,就是https上面會有一個大紅叉)nginx
推薦一個免費的網站:https://www.startssl.com/web
startssl的操做教程看這個:http://www.freehao123.com/startssl-ssl/瀏覽器
2.根據ssl.key和ssl.crt部署nginxtomcat
首先nginx須要支持ssl_module,而後修改nginx.conf以下cookie
server { listen 443; server_name localhost; ssl on; ssl_certificate /opt/tengine/conf/ssl/free4lab.crt; ssl_certificate_key /opt/tengine/conf/ssl/free4lab_nopass.key; ssl_session_timeout 5m; }
在相應的位置放置crt文件和key文件,注意到這邊的key是nopassword的,就是重啓nginx的時候,不須要輸入密碼。session
free4lab_nopass.key是根據free4lab.key生成的,生成命令以下:ide
openssl rsa -in free4lab.key -out free4lab_nopass.key 而後輸入密碼就行
3.修改相應的服務配置文件,監聽443端口網站
upstream account.free4lab.com { session_sticky cookie=uid fallback=on path=/ mode=insert option=indirect; server 192.168.1.62:8084 weight=10; server 192.168.1.63:8082 weight=10; } server { listen 80; listen 443; server_name account.free4lab.com; location / { session_sticky_hide_cookie upstream=account.free4lab.com; proxy_pass http://account.free4lab.com; } }
這樣訪問 https://account.free4lab.com,https上頭的標就是綠色的了!enjoy