1. 程式人生 > 實用技巧 >Linux Nginx配置https,解決“parameter requires ngx_http_ssl_module”的問題

Linux Nginx配置https,解決“parameter requires ngx_http_ssl_module”的問題

今天再做nginx下https配置的時候,配置完nginx重啟的時候,報瞭如下錯誤:

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

原因也很簡單,nginx缺少http_ssl_module模組,編譯安裝的時候帶上--with-http_ssl_module配置就行了,但是現在的情況是我的nginx已經安裝過了,怎麼新增模組,其實也很簡單,往下看:

下載與本地相同的版本,我的是1.6.2版本(其他版本下載方式同理)。連線“http://nginx.org/download/nginx-1.6.2.tar.gz”下載原始碼,並解壓到“/usr/local/src/nginx-1.6.2”目錄。

步驟開始:

切換到原始碼包:

cd/usr/local/src/nginx-1.6.2

檢視nginx原有的模組

/usr/local/nginx/sbin/nginx-V

那麼我們的新配置資訊就應該這樣寫:

bash ./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_ssl_module

執行上面的命令即可,等配置完

配置完成後,執行命令

make

這裡不要進行make install不要進行make install不要進行make install (重要的事情說三遍),否則就是覆蓋安裝

然後備份原有已安裝好的nginx

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

然後將剛剛編譯好的nginx覆蓋掉原有的nginx(這個時候nginx要停止狀態)

這個命令可能會出現“file busy”的問題,這是因為nginx其他執行緒佔用,使用命令“fuser /usr/local/nginx/sbin/nginx” 檢視佔用執行緒名稱,kill即可。

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

提示是否覆蓋,輸入yes即可

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

/usr/local/nginx/sbin/nginx-v
推薦:鋅聞網