網域名稱增加https訪問

2021-10-11 19:16:34 字數 1808 閱讀 1017

環境配置:linux + docker + nginx1.9.8

由於環境部署在docker裡面,所以先進入docker

docker ps 展示出所有的docker映象,docker exec -it 映象名 bin/bash 進入映象 (這裡是重點,沒有docker的忽略)

找到nginx的網域名稱配置檔案,我的目錄是/etc/nginx/conf.d/***.conf

ssl_certificate /usr/local/src/ssl/***x.pem; #證書裡面,必須是包含兩套完整的-----begin certificate-----和-----end certificate-----

ssl_certificate_key /usr/local/src/ssl/***x.key; #證書金鑰檔案

ssl_protocols tlsv1 tlsv1.1 tlsv1.2;

ssl_ciphers all:!dh:!export:!rc4:+high:+medium:!low:!anull:!enull;

以上兩個***.pem 和 ***.key 需要申請 (我的機器是在阿里雲上的,可以直接在阿里雲申請)

重啟nginx:nginx -s reload

這時候報錯:unknown directive 「ssl_certificate」 這是由於nginx的ssl模組未安裝,這裡我們需要重新編譯下nginx

來到解壓目錄下後,按順序執行一下命令:

命令1./configure --with-http_ssl_module //重新新增這個ssl模組

注意如果沒有出現錯誤,則直接看命令2即可

執行以上一條命令出現這個錯誤(./configure:錯誤:ssl模組需要openssl庫。),原因是因為缺少了openssl,那我們再來安裝乙個即可執行:yum -y install openssl openssl-devel

等待openssl的安裝完成後,再執行./configure ,最後在執行」 命令1" 即可。

命令2執行make命令,但是不要執行make install,因為make是用來編譯的,而make install是安裝,不然你整個nginx會重新覆蓋的。

命令3在我們執行完做命令後,我們可以檢視到在nginx解壓目錄下,objs資料夾中多了乙個nginx的檔案,這個就是新版本的程式了。首先我們把之前的nginx先備份一下,然後把新的程式複製過去覆蓋之前的即可。

cp /usr/local/nginx/sbin/nginx       /usr/local/nginx/sbin/nginx.bak

cp objs/nginx /usr/local/nginx/sbin/nginx

命令4,最後我們來到nginx安裝目錄下,來檢視是否有安裝ssl模組成功。執行./sbin/nginx -v即可看到如下圖:

10. 記得 再次重啟nginx

這個時候發現https還是沒有生效,原因是 上述修改是在docker裡面的nginx,所以只支援docker裡面訪問,所以我們還需要在linux上(docker外面)修改,找到**/etc/nginx/conf.d/vhost/***.conf**

同樣的還是要增加ssl相關配置,請看第一步

同時也要加上如下**塊,8081是docker裡面nginx開放的埠

location /

tomcat 增加https安全協議訪問

首先,需要產生乙個證書,當然,在正式的生產環境,證書是由客戶向合法的受信任的數字證書頒發機構申請,在實際專案中,不需要我們自己生成證書,是由客戶提供的,但是在此處為了說明搭建https協議服務的過程,我們自己生成數字證書來演示此過程。首先,使用jdk隨機提供的證書生成工具 keytool,此工具位於...

網域名稱配置https

阿里可以一年的免費申請https證書 1 網域名稱 管理 免費開啟ssl證書 3 在伺服器的nginx目錄下建立乙個cert資料夾,把兩個證書檔案放進去 4 修改nginx配置,nginx原有自帶的https配置,只需要改一下檔案路徑即可 5 重啟nginx服務,就可以用https 的網域名稱訪問 ...

記錄貼 配置HTTPS網域名稱訪問到本地區域網閘道器

記錄點點滴滴 每日一句 i am more vulnerable than i thought,but much stronger than i ever imagined.找一台本地區域網的伺服器,通過docker部署我們的閘道器服務 在阿里雲的網域名稱解析處,把我們想要給前端使用的本地測試網域名...