CentOS7中通過Nginx配置https時缺少ssl模塊問題
在centos中,我們安裝配置nginx的時,一般是沒有安裝ssl模塊的,所以在配置https後會出現如下錯誤。
nginx: [emerg] unknown directive 「ssl」 in /usr/local/nginx/conf/nginx.conf:42
CentOS中安裝Nginx,請參考:CentOS7中安裝Nginx
出現以上錯誤的原因是因為:安裝nginx時未安裝ssl模塊,下面我們就來安裝ssl模塊,Nginx中其他模塊的安裝方法也類似
我們在CentOS7中安裝Nginx一文中,講了安裝nginx的過程,我們進入解壓的nginx安裝包中,如下圖所示的包
1、將ssl模塊安裝到指定路徑中
cd nginx-1.10.3
./configure --prefix=/usr/local/software/nginx --with-http_ssl_module
2、編譯nginx,這該目錄下執行make,但是千萬不要執行make install 不然會覆蓋之前的nginx
make
3、為了安全起見,我們可以將原來的nginx執行文件備份一下
cp /usr/local/software/nginx/sbin/nginx /usr/local/software/nginx/sbin/nginx.bak
4、將新加入了ssl模塊的nginx文件拷貝到安裝的nginx的路徑中
cp objs/nginx /usr/local/software/nginx/sbin/nginx
5、檢查nginx配置是否成功
/usr/local/software/nginx/sbin/nginx -t
(nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful)
6、重啟nginx
/usr/local/software/nginx/sbin/nginx -s reload
TAG:明天的地平線 |