Nginx反向代理Spring boot+vue.js多專案並使用SSL
阿新 • • 發佈:2019-01-22
1.下載最新版nginx對應其作業系統,安裝並執行成功;
2.申請SSL證書,騰訊雲、阿里雲都可以;
3.部署證書到nginx,可以參考)把兩個金鑰檔案儲存的`nginx/cert`資料夾,然後修改`nginx/nginx.conf`檔案:(www.yuming.com需要替換成你的域名)
server { listen 443; server_name www.yuming.com; ssl on; ssl_certificate nginx/cert/1_www.example.com_bundle.crt; ssl_certificate_keynginx/cert/2_www.example.com.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; }
>>重啟nginx後,在瀏覽器中輸入 https://www.yuming.com 檢測是否出現nginx的歡迎頁。
5.打包vue.js專案(使用命令npm run build,打包後在dist中) 載入nginx靜態web檔案目錄
繼續修改剛才修改的server 內容並新增:(請將dist替換成自己dist檔案所在的正確路徑)
server { location / { root dist; index index.html index.htm; } }
6.打包Springboot專案為jar,執行(cmd jar所在目錄: 命令java -jar project1.jar
如果是多模組請注意埠衝突問題),並使用nginx反向代理。
繼續修改剛才修改的server 內容並新增:(請將埠號替換成自己專案訪問埠號)
server { location ^~ /module1 { proxy_pass http://localhost:8081; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location ^~ /module2 { proxy_pass http://localhost:8082; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
訪問測試:https://www.yuming.com/module1 是否能訪問專案
https://www.yuming.com/module2 是否能訪問專案
注意:Vue.js訪問需要避免跨域問題。