当我们的Linux服务器上当中发布了web项目,有时候需要配置一个SSL证书,来使用https,然而我们一开始编译的Nginx的时候并没有把SSL模块一起编译进去。
1.开源的NGINX,通常编译的时候不带有ssl module。需要我们自己带上ssl module的参数来编译。可以通过下面的命令查看当前NGINX是否带有ssl module: ./nginx -V

如果configure arguments后没有TLS或SSL相关的内容,就表明没有ssl module。
2.找到你nginx的安装源,输入以下命令:
./configure --with-http_ssl_module
3.执行make命令,但是不要执行make install,因为make是用来编译的,而make install是安装,不然你整个nginx会重新覆盖的。
make
4.在我们执行完做命令后,我们可以查看到在nginx解压目录下,objs文件夹中多了一个nginx的文件,这个就是新版本的程序了。首先我们把之前的nginx先备份一下,然后把新的程序复制过去覆盖之前的即可。
首先关闭nginx:
nginx -s stop
复制文件
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp objs/nginx /usr/local/nginx/sbin/nginx
5.启动nginx
./nginx
执行./sbin/nginx -V ,来检查ssl模块是否安装成功。