配置nginx支持https


 一:開啟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

 

補充:

nginx配置ssl,支持https的配置:

server {
        listen       443 ssl;
        server_name  aa.abc.com;

        ssl_certificate      cert/2643408_xxx.pem;
        ssl_certificate_key  cert/2643408_xxx.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            proxy_pass http://127.0.0.1:8886;
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM