1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Nginx配置SSL证书 实现https访问

Nginx配置SSL证书 实现https访问

时间:2024-01-07 03:37:05

相关推荐

Nginx配置SSL证书 实现https访问

提问:为什么要把网站升级到 https?

解答:HTTPS 是一种基于SSL 协议的网站加密传输协议。网站安装 SSL 证书后,使用 HTTPS 加密协议访问,可激活客户端浏览器到网站服务器之间的 SSL 加密通道(SSL协议),从而实现高强度双向加密传输,防止传输数据被泄露或篡改。HTTPS 也就是 HTTP + SSL,是 HTTP 的安全版。

那如何配置呢,别慌,我来也~

首先,需要注意的一点:一张单域名版证书可以保护一个域名,当申请证书的域名是以“www”开头的子域名时,默认也可以保护不带“www”的主域名,例如为 申请SSL, 则 也可以在该SSL的保护下面;反正,为 申请SSL, 则 也可以在该SSL的保护下面。因此无需重复申请。如果您为 申请 SSL, 则 默认是不会被保护的。

购买 SSL 证书,我选择的是免费版的证书申请(证书绑定域名)

填写证书绑定的域名、申请人信息,选择域名验证方式,验证并提交审核证书下载

在 SSL 证书页面,点击已签发标签,定位到需要下载的证书,点击右侧的下载,下载 Nginx 版证书压缩包到本地。在服务器上安装 SSL 证书并重启nginx

第一步:解压 Nginx 证书(有 .pem 和 .key 为后缀的两个文件)。

第二步:在 Nginx 的安装目录下创建 cert 目录,将下载的两个文件上传到 cert 目录中。

第三步:打开Nginx 的安装目录下的配置文件 conf.d/*.conf,替换为以下内容:

server {listen 80;server_name localhost;rewrite ^(.*)$ https://$host$1 permanent; //实现http访问自动跳转到httpslocation / {index index.html index.htm;}server {listen 443;server_name localhost;ssl on;root html;index index.html index.htm;ssl_certificate cert/domain name.pem; #将domain name.pem替换成您证书的文件名。ssl_certificate_key cert/domain name.key; #将domain name.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;location / {index index.html index.htm;}

第四步:检查 nginx 配置 nginx -t

此时,会有一个警告:nginx: [warn] the “ssl” directive is deprecated, use the “listen … ssl” directive instead in /etc/nginx/conf.d/.conf:12

解决:去掉ssl on;将listen 443 改为listen 443 ssl;

执行nginx -t ok了!

第五步:重启 Nginx 服务器 nginx -s reload。进入阿里云/腾讯云安全组,开放 443 端口云服务器的防火墙开启 443 端口

firewall-cmd --zone=public --add-port=443/tcp --permanent 增加443端口

firewall-cmd --reload 重启防火墙访问,成功~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。