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已經安裝過了,怎麼添加模塊,其實也很簡單,往下看: 作個說明:個人nginx的安裝目錄是/usr/local/nginx這個目錄,個人源碼包在/usr/local/src/nginx-1.6.2目錄html
切換到源碼包:nginx
cd /usr/local/src/nginx-1.11.3
查看nginx原有的模塊安全
/usr/local/nginx/sbin/nginx -V
在configure arguments:後面顯示的原有的configure參數以下:session
--prefix=/usr/local/nginx --with-http_stub_status_module
那麼咱們的新配置信息就應該這樣寫:性能
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
運行上面的命令便可,等配置完ui
配置完成後,運行命令code
make
這裏不要進行make install,不然就是覆蓋安裝server
而後備份原有已安裝好的nginxhtm
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
而後將剛剛編譯好的nginx覆蓋掉原有的nginx(這個時候nginx要中止狀態)ip
cp ./objs/nginx /usr/local/nginx/sbin/
而後啓動nginx,仍能夠經過命令查看是否已經加入成功
/usr/local/nginx/sbin/nginx -V
server { listen 80 default backlog=2048; listen 443 ssl; server_name wosign.com; root /var/www/html; ssl_certificate /usr/local/Tengine/sslcrt/ wosign.com.crt; ssl_certificate_key /usr/local/Tengine/sslcrt/ wosign.com .Key; }
把ssl on;這行去掉,ssl寫在443端口後面。這樣http和https的連接均可以用
能夠用私鑰來作這件事。生成一個解密的key文件,替代原來key文件。
openssl rsa -in server.key -out server.key.unsecure
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m;