服务器 
首页 > 服务器 > 浏览文章

Nginx配置SSL证书出错解决方案

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

一、引言

当我们的Linux服务器上当中发布了web项目,有时候需要配置一个SSL证书,这样表示你这个网站还比较正式哈哈哈。当我把证书下载好,把nginx.conf配置好,简直就是万事俱备,只欠重启。结果一重启,duang~出错了。

nginx:[emerg]unknown directive ssl,就是这个错误提示

因为我们配置这个SSL证书需要引用到nginx的中SSL这模块,然而我们一开始编译的Nginx的时候并没有把SSL模块一起编译进去,所以导致这个错误的出现。

二、错误解决步骤

既然在安装的时候没有编译ssl,难道把nginx卸载重新安装一次?不不不,我们只需要在原有的基础上添加ssl模块就行了。

步骤一:我们先来到当初下载nginx的包压缩的解压目录,如果你是看小编写的教程安装的,解压目录应该在“/usr/loacl/src/”,绝大多数应该都是在这个目录下的,已经是一种规范了。

步骤二:来到解压目录下后,按顺序执行一下命令:

命令1、./configure --with-http_ssl_module //重新添加这个ssl模块

注意如果没有出现错误,则直接看命令2即可

执行以上一条命令出现这个错误(./configure:错误:SSL模块需要OpenSSL库。),原因是因为缺少了OpenSSL,那我们再来安装一个即可执行:yum -y install openssl openssl-devel

等待OpenSSL的安装完成后,再执行./configure ,最后在执行” 命令1" 即可。

命令2、执行make命令,但是不要执行make install,因为make是用来编译的,而make install是安装,不然你整个nginx会重新覆盖的。

命令3、在我们执行完做命令后,我们可以查看到在nginx解压目录下,objs文件夹中多了一个nginx的文件,这个就是新版本的程序了。首先我们把之前的nginx先备份一下,然后把新的程序复制过去覆盖之前的即可。

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

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

命令4,最后我们来到Nginx安装目录下,来查看是否有安装ssl模块成功。执行./sbin/nginx -V即可看到如下图:

Nginx配置SSL证书出错解决方案

三、最后如果出现如上图,则SSL模块添加到Nginx的编译好了,这次重新启动则OK了。

Nginx配置SSL证书出错解决方案

如果重新启动nginx报如下错误:

nginx 报错 : [warn] the "ssl" directive is deprecated, use the "listen ... ssl" directive instead

将 ssl on改为listen 443 ssl。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

上一篇:基于zabbix实现监控Jenkins过程详解
下一篇:Docker默认网段修改实现方法解析
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。