nginx安装ssl证书域名免费证书


nginx安装ssl证书域名免费证书

配置ssl证书之前,先准备SSL证书,至于获取的途径很多(阿里云的服务,第三方服务购买)。这里不详细解释。以下是我的SSL证书

准备好证书后,找到nginx的安装目录,我的安装位置为:/usr/local/nginx

进入config/nginx.conf如果没有装winscp(一款可视化文件操作工具)的。可以通过命令行的方式,编辑nginx的config文件。


2、第一个server修改好了之后。那么就需要开始配置第二个server。拉到文件的底部。看到有一个https类型的server。而且已经全部被注释封上了,这是我们需要改的第二个server,如图:


1、进去nginx的sbin文件夹,我的sbin文件夹在:/usr/local/nginx/sbin执行以下语句:检验配置文件是否有错误

如果nginx曾经安装过SSL模块,那么应该会显示以下界面:(如果已经显示配置成功,那么可以跳过这一步,直接重启nginx就可以了)可是大多数第一次安装https证书,都会报错,说缺少SSL模块,如下:


2、这时候我们就可以先安装SSL模块:先确认2个位置:1)我的nginx是安装在了/usr/local/nginx/下2)我的nginx的源码包放在了/usr/local/nginx/nginx/nginx-1.8.0下。如果没有的话,重新下载你对应的nginx版本的源码包,找个目录解压

这时候可能又会有点小插曲,启动ssl模块的时候,报错了:看到了error。就知道linux安装失败,停止了。这个错误是因为我们没有安装opensslopenssl-devel(如果这一步没有报错的话,可以跳过下面的安装openssl-devel的步骤)

安装上了openssl-devel后,重新执行:./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_ssl_module


6、这时候应该就执行配置成功了。配置成功后,那么就需要编译我们的配置。(注意这里只能用make而不要用makeinstall,因为执行makeinstall是覆盖安装的意思)运行:


7、还是老规矩,先备份旧的nginx,执行语句(这里面复制的文件的路径需要根据你们安装的目录自行修改,如果和我安装的路径是一样的那么可以直接运行该语句):


9、关闭nginx进程后就可以开始替换了(注意:我当前的位置是在我nginx的源码包中,目录不要搞错了)执行:(复制到我的nginx的目录中)

因为刚才替换nginx模块的时候是把nginx进程都杀死了,所以要用上面的命令进行启动,而不能使用reload重启。

小拓展:刚才配置nginx的时候是直接在配置文件上做修改,其实我们可以把小的配置抽离出去,尽量保持原配置文件不被修改

接下来,需要找到对应的配置文件,因为我们这里的路径是直接vhost。所以在配置文件同级目录,新建一个vhost文件夹,而且我们引入的是*.conf。意思就是引入vhost中所有后缀是.conf的配置文件:

如果有多个二级域名,那么就复制多份xx.conf文件即可,配置文件会自动引入到nginx的配置中,不过每次新增配置文件都需要检测一遍,然后重启nginx