CentOS下配置Nginx的https时报错:缺少ngx_http_ssl_module

1.首先,找到Nginx安装包的位置。比如,我的是:/usr/local/src/nginx-1.15.1

cd /usr/local/src/nginx-1.15.1

【查看Nginx版本命令】/usr/local/nginx/sbin/nginx -V (/usr/local/nginx/是你Nginx服务器的实际位置)

2.生成新的Nginx配置。执行

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

查看configure arguments:后边有没有值,如果有,就复制下来。

然后执行

./configure --原来有的模块(如果有的话) --with-http_ssl_module

然后覆盖nginx之前的二进制文件(注意,make就可以了,不需要make install)

make

3.关闭现在运行的Nginx服务器。

/usr/local/nginx/sbin/nginx -s stop

由于我的配置文件报错,缺少

nginx: [emerg] the “ssl” parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:121

所以无法关闭。于是,我尝试把新的正确的nginx.conf替换出问题的nginx.conf。

再次执行关闭,成功。

4.OK,执行最后的步骤。把编译好的nginx覆盖掉原有的nginx。

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

此时会询问是否覆盖,输入y同意,开始覆盖。如果提示文件繁忙,也可以先去到nginx安装目录下sbin目录把nginx先停止,再完成上述覆盖操作。

然后我们重启nginx,配置好ssl就可以正常使用了。

    server {  
        listen 443 ssl;  
        server_name edu.a.com;  
        root /home/iaiai/workstation/webapp/www;  
#        ssl on;  
        ssl_certificate /home/iaiai/workstation/ssl/server.crt;  
        ssl_certificate_key /home/iaiai/workstation/ssl/server.key;  
        ssl_session_cache shared:SSL:1m;  
        ssl_session_timeout 5m;  
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;  
        ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!3DES:!aNULL:!eNULL;  
        ssl_prefer_server_ciphers on;  
  
        location /api/ {  
            #之前http怎么配置的还怎么配置  
        }  
    }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值