最近一個項目需要用到https服務(wù),因為涉及直播及瀏覽器調(diào)取用戶的攝像頭及麥克風等設(shè)備。
網(wǎng)上找了很多的例子橙数,配置nginx(前端服務(wù))及SpringBoot的后端java項目的https實現(xiàn),發(fā)現(xiàn)效果并不理想,遇到的問題如下:前端頁面打開的時候需要做下證書的授權(quán)衡招,鏈接不受信任;后端接口同樣是需要做一下證書的授權(quán)每强,不然請求后端服務(wù)時會報錯始腾。
需求解決辦法就是州刽,如何能做一次授權(quán)就能前后端同時訪問。最終使用騰訊云的SSL證書服務(wù)解決了浪箭,目前騰訊云的SSL服務(wù)是一年的免費期穗椅。
具體流程:
1.登錄騰訊云申請
地址:https://console.cloud.tencent.com/ssl
注冊,申請
通用名稱寫域名即可奶栖,之后https使用在該域名下
私鑰密碼匹表,自己設(shè)置一個密碼
下一步進入審核狀態(tài),需要做下認證
認證參考:https://cloud.tencent.com/document/product/400/4142
一般10分鐘左右就ok了
通過后會有下載選項宣鄙,下載即可袍镀。
2.配置nginx
nginx需要的是nginx目錄中的那兩個文件:xxx.crt ,xxx.key
nginx配置:
————————————————————
server {
listen? ? ? 8080;
server_name? localhost xxx.com www.xxx.com;
ssl_certificate? ? /usr/local/service/ca/xxx.crt;
ssl_certificate_key /usr/local/service/ca/xxx.key;
ssl? ? ? ? ? ? ? ? ? on;
ssl_session_timeout? 5m;
ssl_protocols? SSLv2 SSLv3 TLSv1;
ssl_ciphers? HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers? on;
location / {
root? /usr/local/service/xxx;
index? index.html index.htm;
}
}
————————————————————————
3.SpringBoot配置
配置application.properties即可
————————————————————————
server.ssl.key-store=/usr/local/service/ca/XXX.jks
server.ssl.key-store-password=zxzxzxz
server.ssl.keyStoreType=JKS
————————————————————————
Done!