Nginx 域名SSL证书配置(网站 http 升级为 https)

发布时间:2022-04-24 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Nginx 域名SSL证书配置(网站 http 升级为 https)脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

前言@H_777_3@

HTTP 和 HTTPS

我们日常生活中,常见的网址大致分为2种:

一种是基于 http 协议,如:http://www.baidu.COM

一种是基于 https 协议,如:https://www.baidu.com

现在很多网站出于安全的考虑,会把网站的域名访问从 http 已经升级为 https,如果你不知道 http 和 https 的概念,不妨先看看下面这篇文章:HTTP和HTTPS有什么不同

SSL 证书

那么我们如何将 http 升级为 https 呢?

我们要升级 http 为 https,首先需要一个 SSL 证书。 SSL 你可以想象为本科毕业证,有个这个本科毕业证,就能证明你是本科生,就都能去申请本科生门槛的招聘。当然,证书可以由不同院校颁发,比如清华本科毕业证和普通三本院校的本科毕业证,这两者的含金量肯定是有不同的。SSL证书也一样,也有不同发签发机构。

配置方式

当有了域名和SSL证书后,我们就可以将域名网址升级为 https 了,我们常用的做法是在 Nginx 中配置域名的 SSL 证书。

具体过程

开始访问

(1)下面我以自己的网站,配置我的个人网站 SSL 证书,将我的网站升级为SSL。

我访问自己网站下的一张图片( http://www.zyqok.cn/fj.jpg ),这是一个 http 访问。

在这里插入图片描述

(2)然后我们改为 https 访问,发现是访问不了的。

在这里插入图片描述

下面我们正式开始,将网站改为 https 的请求访问。

服务器安装Nginx

首先,我们需要在服务器上安装 Nginx 环境,如果你服务器已经有Nginx了,那么这一步可以跳过,如果未安装Nginx,不妨参照

获取 SSL 证书

由于我服务器是阿里买的,所以阿里会送几个免费的SSL证书,下面以阿里云的获取 SSL 证书过程进行说明。
如果你不是阿里云客户,那么这一步可以跳过,然后自行百度 “SSL证书” 到相关厂商购买,或者百度 “免费SSL证书” 。

(1)登录阿里云,然后找到 【SSL证书】一栏,点击( 因为我已经开通过了该功能,所以你的位置可能和我的位置不一样,自己去面板找 )。

在这里插入图片描述

(2)来到这个面板后,点击【购买证书】。

在这里插入图片描述

(3)选择免费型,然后购买

在这里插入图片描述

(4)当你完成购买后,就会在页面出现一条对应记录,然后点击【证书申请】。

在这里插入图片描述

(5)然后写好你需要升级的域名,比如我要把我的个人网站 http://www.zyqok.cn 升级为 https://www.zyqok.cn
那么此时的域名就填 zyqok.cn,然后填写好其他信息,点击下一步,然后这个证书就会向上面提交,进入审核状态。

在这里插入图片描述

(6)当你的申请通过之后,你就可以下载你的SSL证书了,我们点击右下角【下载】

在这里插入图片描述

(7)继续选择 Nginx 后面的【下载】

在这里插入图片描述

(8)下载完成后,我们就可以得到一个SSL证书的压缩包

在这里插入图片描述

上传SSL证书到服务器

(1)我们先将证书压缩包解压,然后可以得到如下两个文件。

在这里插入图片描述

(2)我们将这两个文件通过 FTP 工具,上传到服务器上,并放在 Nginx 配置文件所在的同级目录下。

在这里插入图片描述

修改配置并重启

(1)打开你的 Nginx.conf 配置文件,然后将你的443和80端口的 server 信息配置如下:
更多详细步骤可以查看阿里云的文档:@L_126_0@

# 直接访问 https 
 server
 {
  	charset utf8;
	listen 443;
	root /opt/local;
	server_name www.zyqok.cn; 
	ssl on;
	ssl_certificate 3067072_zyqok.cn.PEm;
	ssl_certificate_key 3067072_zyqok.cn.key;
	ssl_session_timeout 5m;
	ssl_ciphers ECDHE-RSA-AES128-GCM-sHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; 
	ssl_PRotocols TLSv1 TLSv1.1 TLSv1.2; 
	ssl_prefer_server_ciphers on;
	
 }
 
 # http 跳转 https
 server 
 {
    listen 80;
	server_name zyqok.cn;
	rewrITe ^/(.*) https://www.zyqok.cn permanent;
 }

(2)注意蓝色方框的内容是你的域名和 SSL 证书相关文件。

在这里插入图片描述

(3)然后重启你的 Nginx 服务

进入nginx 的 sbin 目录下,输入下面命令,重启 nginx 服务

./nginx -s reload

在这里插入图片描述

(4)如果是阿里云的服务器,别忘了开放 80 端口和 443 端口,不然访问不了

不会配置的可以参考这篇文章:阿里云安全规则配置

在这里插入图片描述

再次访问

(1)直接 https 进行访问(443端口),可以看到是OK的

在这里插入图片描述

(2)然后 http 访问(80端口),他会自动跳转到 https,也是OK的。

在这里插入图片描述

至此,你已经学会了 SSL 证书配置!谢谢阅读!

脚本宝典总结

以上是脚本宝典为你收集整理的Nginx 域名SSL证书配置(网站 http 升级为 https)全部内容,希望文章能够帮你解决Nginx 域名SSL证书配置(网站 http 升级为 https)所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:Nginx