一、引言
當我們的linux伺服器上當中發布了web專案,有時候需要配置乙個ssl證書,這樣表示你這個**還比較正式哈哈哈。當我把證書**好,把nginx.conf配置好,簡直就是萬事俱備,只欠重啟。結果一重啟,duang~出錯了。
nginx:[emerg]unknown directive ssl,就是這個錯誤提示
因為我們配置這個ssl證書需要引用到nginx的中ssl這模組,然而我們一開始編譯的nginx的時候並沒有把ssl模組一起編譯進去,所以導致這個錯誤的出現。
二、錯誤解決步驟
既然在安裝的時候沒有編譯ssl,難道把nginx解除安裝重新安裝一次?不不不,我們只需要在原有的基礎上新增ssl模組就行了。www.cppcns.com
步驟一:我們先來到當初**nginx的包壓縮的解壓目錄,如果你是看小編寫的教程安裝的,解壓目錄應該在「/usr/loacl/src/」,絕大多數應該都是在這個目錄下的,已經是一種規範了。
步驟二:來到解壓目錄下後,按順序執行一下命令:
命令1、./configure --with-http_ssl_module //重新新增這個ssl模組
注意如果沒有出現錯誤,則直接看命令2即可
執行以上一條命令出現這個錯誤(./config程式設計客棧ure:錯誤:ssl模組需要openssl庫。),原因是因為缺少了openssl,那我們再來安裝乙個即可執行:yum -y install openssl openssl-devel程式設計客棧
等待openssl的安裝完成後,再執行./configure ,最後在執行」 命令1" 即可。
命令2、執行make命令,但是不要執行make install,因為make是用來編譯的,而make install是安裝,不然你整個nginx會重新覆蓋的。
命令3、在我們執行完做命令後,我們可以檢視到在nginx解壓目錄下,objs資料夾中多了一nkeowjnok個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即可看到如下圖:
三、最後如果出現如上圖,則ssl模組新增到nginx的程式設計客棧編譯好了,這次重新啟動則ok了。
如果重新啟動nginx報如下錯誤:
nginx 報錯 : [warn] the "ssl" directive is deprecated, use the "listen ... ssl" directive instead
將 ssl on改為listen 443 ssl。
本文標題: nginx配置ssl證書出錯解決方案
本文位址:
nginx配置ssl證書
最近專案中所有的http請求都要公升級到https,實踐了一把配置nginx的ssl證書。由於我們的證書是公司下發的,所以省略了申請證書的體驗,關於申請免費證書可以自行搜尋。拿到的證書分兩個檔案,乙個是 crt,乙個是 key,分別對應公鑰和私鑰。step1.假設我們的nginx安裝目錄是 usr ...
nginx配置ssl證書
1.獲取免費的 ca 證書。2.然後填寫資訊申請 4.上傳證書到你的伺服器 cd usr local nginx conf vhost mkdir cert 將.key和.pem檔案上傳到cert資料夾 5.配置 nginx 最好把之前 80 埠的配置備份乙份 server location loc...
Nginx配置SSL證書
本文主要記錄nginx怎麼配置ssl證書,前提是nginx安裝成功和ssl證書已經獲取。可以看到 nginx的目錄是 usr local nginx 那麼我們需要找到 nginx.conf檔案並修改 cd usr local nginx conf vim nginx.conf 如果使用者使用的是ht...