1. 程式人生 > >已安裝nginx支援https配置 the "ssl" parameter requires ngx_http_ssl_module

已安裝nginx支援https配置 the "ssl" parameter requires ngx_http_ssl_module

原文連結:https://blog.seosiwei.com/detail/28

 

nginx已安裝,ssl模組未安裝的解決方法:

如果需要在linux中編譯自己的nginx伺服器,請參照:https://www.cnblogs.com/zkfopen/p/10118627.html

一:開始Nginx的SSL模組

Nginx如果未開啟SSL模組,配置Https時提示如下錯誤:

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf

解釋:nginx缺少http_ssl_module模組,需要在已安裝的nginx中新增ssl模組。

說明:我的nginx安裝目錄為:/usr/local/nginx  , 原始碼包在/usr/src/nginx-1.5.9目錄

Nginx開啟SSL模組:

切換到原始碼包:
cd /usr/src/nginx-1.5.9

檢視nginx原有的模組
/usr/local/nginx/sbin/nginx -V

在configure arguments:後面顯示的原有的configure引數如下:
--prefix=/usr/local/nginx --with-http_stub_status_module

 

二:從新配置SSL模組:

進入nginx原始碼包目錄,執行:
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

配置完成後,執行命令make命令:

make

注意:此處不能進行make install,否則就是覆蓋安裝

 

三:替換已安裝好的nginx包

替換之前先備份:

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

先停止nginx服務:

//查詢nginx主程序號
$ ps -ef | grep nginx

//從容停止Nginx:
$kill -QUIT 主程序號

//快速停止Nginx:
kill -TERM 主程序號

//強制停止Nginx:
pkill -9 nginx

將剛剛編譯好的nginx覆蓋掉原有的nginx

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

然後啟動nginx,仍可以通過命令檢視是否已經加入成功

/usr/local/nginx/sbin/nginx -V
此時應該顯示為即配置成功:
configure arguments:
--prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module