[Nginx] 增加SSL时,启动报 "ssl parameter requires ngx_http_ssl_module" 错误
问题
在腾讯云申请sll证书后,按照要求配置完 nginx.conf
server {
listen 443 ssl;
server_name 域名;
ssl_certificate 域名_bundle.crt;
ssl_certificate_key 域名.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
root /home/run/web;
index index.html index.htm;
}
}
启动时报错。
分析
nginx缺少http_ssl_module模块,编译安装的时候带上–with-http_ssl_module配置就行了,但是现在的情况是我的nginx已经安装过了,怎么添加模块?以我的nginx为例子
①nginx的安装目录是/usr/local/nginx这个目录,
②源码包在/usr/local/src/nginx-1.21.0目录
操作步骤
- 之前是yum方式安装,无源码,所以先下载源码
wget http://nginx.org/download/nginx-1.21.0.tar.gz
- 解压后,进入源码目录
tar -zxvf nginx-1.21.0.tar.gz
cd nginx-1.21.0
- 编译
(这里不要进行make install,否则就是覆盖安装)
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make
- 备份原来nginx配置文件
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
- 保证nginx是关闭状态
nginx -s stop
- 复制刚编译生成的配置覆盖原有的配置
cp ./objs/nginx /usr/local/nginx/sbin/
- 启动nginx
nginx
附记:在茫茫的信息海洋中,遇到就是有缘,期待回复交流,为缘分留下痕迹……