上一篇:nginx之离线安装
HTTPS (全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 [1] 。HTTPS 在HTTP 的基础下加入SSL 层,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面 [2] 。
一、检查nginx是否安装ssl模块
使用命令:nginx -V
如果不支持,则需要安装ssl模块,已经支持跳过安装步骤
二、安装ssl模块
如果安装nginx时未安装ssl模块,则需要再次编译nginx,步骤:
(一)、进入下载nginx的包压缩的解压目录
先进入到下载nginx的包压缩的解压目录,如我的是在/data/server/nginx-1.17.0,
(二)、重新编译添加ssl模块
命令1:./configure --with-http_ssl_module //重新添加这个ssl模块
如果没有出现报错,则执行命令2,
执行以上一条命令出现这个错误(./configure:错误:SSL模块需要OpenSSL库。),原因是因为缺少了OpenSSL,需要安装openssl模块,openssl安装完成后再执行命令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即可看到如下图:
三、配置SSL证书文件
(一)、上传证书文件
在nginx安装目录创建cert目录,并将证书的pem文件和key文件上传至cert目录,目录路径如:/usr/local/nginx/cert,为了方便识别域名证书。
(二)、修改配置文件。
打开nginx.conf
vim nginx.conf
在server下添加如下配置并将server_name 值更改为访问域名值
listen 443 ssl;
ssl_certificate /usr/local/nginx/cert/star_ctools_top.pem;
ssl_certificate_key /usr/local/nginx/cert/star_ctools_top.key;
位置如图:
四、重新启动nginx
nginx -s reload
五、浏览器访问https效果
用谷歌浏览器使用https访问nginx,出现一把锁,点击锁出现连接是安全的,证书有效则说明配置成功。
1、这200G的学习资料15888元买的,免费分享给大家(实用)