配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

这篇具有很好参考价值的文章主要介绍了配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1)为什么要配置SSL证书?

2)为什么阿里云OSS自定义域名也要配置SSL证书?

3)为什么WebSocket会报错呢?

 解决方法

一、配置网站ssl证书

二、阿里云OSS自定义域名如何配置SSL证书 

三、websocket失效后如何从ws换成wss

1)为什么要配置SSL证书?

SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。

SSL证书通过在客户端浏览器和web浏览器之间建立一条SSL安全通道(Secure socket layer(SSL),对传送的数据进行加密和隐藏;确保数据在传送中不被改变,保证数据的完整性,现已成为该领域中全球化的标准。由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装服务器证书就可以激活该功能了,即通过它可以激活SSL协议,实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露,保证了双方传递信息的安全性,而且用户可以通过服务器证书验证他所访问的网站是否是真实可靠。

如今,大型正规网站随处可见均配置了SSL证书,以https协议进行交互,如阿里巴巴、京东、淘宝、百度等等,所以如果网站需要走向市场,就必须配置SSL证书。

 2)为什么阿里云OSS自定义域名也要配置SSL证书?

因为在https的网站中,大部分浏览器是会限制访问http的,需要客户许可后才能进行访问,大大影响使用体验及网站效果。

3)为什么WebSocket会报错呢?

因为在https下应该使用wss协议做安全链接,而不是ws,且wss下不支持ip地址的写法,只能写成域名形式,如下图:

let ws = new WebSocket('ws://127.0.0.1:8081');
let wss = new WebSocket('wss://www.test.com');

 解决方法

一、配置网站ssl证书

(一)申请证书

证书申请 - FreeSSL.cn一个提供免费HTTPS证书申请的网站  

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

1、这里因为是教学,所以选择3个月的就好了 配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

 2、然后依次单击”订单管理-申请证书“;

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

3、因为是个人用,选一个非商业证书免费的就可以了 ;

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

 4、这里的通用名称,最好把项目的域名及阿里云OSS的自定义域名一起放进去,共用一个SSL,不然你就要重复这一个步骤,然后提交申请;

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

 5、点击”获取验证信息“,可以看到3个关键信息,依次将这3个信息,到【阿里云-域名解析-添加记录】中,对应粘贴进去保存即可,耐心等待证书签发下来,需要10几分钟后。

 配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

6、签发成功后,点击右侧【证书操作-下载证书】,因为阿里云OSS是nginx类型的,刚好我的项目也是nginx代理的,所以下载nginx版本的。 配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

 配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

 (二)配置站点

 下载后会有两个文件,一个是PEM文件,一个是KEY文件,在宝塔面板中,选择对应站点,点击【SSL】选项,先在【当前证书】中将下载的2个文件对应复制粘贴上去,然后提交,再点击【证书夹】,点击【部署】即可。这时候你的网站就会变成https了。

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

二、阿里云OSS自定义域名如何配置SSL证书 

 如果前面SSL证书域名没有带上这个自定义的子域名,就需要重新走一遍前面的申请证书流程

 然后再去【阿里云OSS控制台--对象存储--Bucket--Bucket配置--域名管理】中,点击【证书托管

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

依次点击【上传SSL证书--上传证书】,然后将对应文件上传,点击保存即可。上传完成后,就可以选择该证书,一般要等几分钟才会生效。

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

三、websocket失效后如何从ws换成wss

第一步,前端访问地址要做修改为wss连接。

let wss = new WebSocket('wss://你的域名/ws');

第二步,直接使用wss的话,因为我的端口不是443,所以需要nginx转发一下;修改nginx的配置文件proxy_pass指向的是真实的端口。

配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题

    location /ws{
      proxy_pass http://120.XX.X.XXX:8082;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
    }

 第三步,这样就算能一切恢复正常,但是wss有一个机制,1分钟内连接没有任何操作会自动关闭前端的连接,所以需要一个心跳机制来维持连接,这里就不详细介绍了。

备注:如果wss获取用户的ip会因为nginx的代理原因,拿到的是自己服务器的ip地址,如需真实用户的ip的地址,可以在上一步中添加两行代码:

    location /ws{
      proxy_pass http://120.XX.X.XXX:8082;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      #返回用户真实ip
      proxy_set_header X-real-ip $remote_addr;
      proxy_set_header X-Forwarded-For $remote_addr;
    }

然后在wss服务端,通过如下代码,获取真实用户ip文章来源地址https://www.toymoban.com/news/detail-468223.html

  // 获取ip地址
  const ip = req.headers['x-real-ip'] || req.connection.remoteAddress

到了这里,关于配置域名SSL证书、阿里云OSS自定义域名的SSL证书,以及解决配置后WebSocket报错问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 智能路由器中的 dns.he.net可使用自定义域名的免费 DDNS 服务配置方法

    今天介绍的这个是可以使用自定义域名同时支持使用二级域名的免费DDNS服务 dns.he.net的动态DDNS服务的配置方法,  这个服务相对还是比较稳定的,  其配置也和其他的DDNS服务有些不太一样, 首先他的主机名: 这里需要设置为登录后分配的区域域名:  ipv6.he.net  然后就是 DDNS 用户

    2024年02月02日
    浏览(83)
  • 【阿里云】申请与配置域名与配置Https(ssl)证书

    网站标识:域名可以唯一地标识一个网站或在线服务,类似于网站的身份证。通过输入域名,用户可以方便地找到并访问特定的网站 简化网址:域名代替了复杂的 IP 地址(如:192.168.0.1),使用户更容易记忆和输入网站地址。例如,www.example.com 代表了一个网站,而不需要记

    2024年02月02日
    浏览(36)
  • 威联通NAS配置阿里云域名和SSL证书

    从阿里云 万网 购买域名; 为威联通 NAS 配置购买的域名,即设置DDNS; 从阿里云购买 SSL 证书; 为通过域名访问威联通配置 SSL 证书。 登录万网,点击 域名注册 ,输入想注册的域名名称后点击 立即查询 ,直到找到尚未注册的域名后 加入清单 ,然后点击 域名清单 ,点击

    2024年02月06日
    浏览(30)
  • vuepress(六)阿里云二级域名配置与添加SSL证书

    写在前面 这里是小飞侠Pan🥳,立志成为一名优秀的前端程序媛!!! 本篇博客收录于我的github前端笔记仓库中,持续更新中,欢迎star~ 👉 https://github.com/mengqiuleo/myNote 因为自己的域名备案已通过,所以就想自己配置个二级域名。 但是网上的教程都很分散,我自己踩坑了很多

    2024年02月06日
    浏览(34)
  • 用自定义域名访问Tailscale节点

    tailscale 是好东西,在任何地方都可以和在局域网访问一样,但是也有着 IP 访问的不便,一方面 IP 是 tailscale 分配的(非子网路由模式),另一方面还要记住各种端口 tailscale 也考虑到了这些问题,所以推出了 MagicDNS ,允许你为 tailscale 网络中的节点配置 SSL 证书,让你可以通

    2024年02月11日
    浏览(37)
  • Github Pages使用自定义域名

    部署好网站后默认访问地址是xxx.github.io,我们想要自定义为自己的域名 这里我使用的是腾讯云,DNS解析DNSPod 添加两条解析记录: 第一个解析记录的记录类型为A,主机记录为@,记录值为ping 你的github用户名.github.io的ip地址,填入为下列 IP 中的至少一个 185.199.108.153 185.199.109.153

    2024年02月16日
    浏览(37)
  • 七牛云如何绑定自定义域名-小白操作说明——七牛云对象储存kodo

    七牛云如何绑定自定义域名 **温馨提示:使用加速cdn自定义域名是必须要https的,也就是必须ssl证书,否则类似视频mp4 之类会无法使用。 ​ 编辑切换为居中 添加图片注释,不超过 140 字(可选) 点击首页————对象储存——进入点击空间管理——点击对应空间名称进入

    2024年02月13日
    浏览(27)
  • 关于阿里云OSS服务器绑定域名及Https证书

    这是一个没有套路的前端博主,热衷各种前端向的骚操作,经常想到哪就写到哪,如果有感兴趣的技术和前端效果可以留言~博主看到后会去代替大家踩坑的~ 主页: oliver尹的主页 格言: 跌倒了爬起来就好~ 关于阿里云OSS服务器绑定域名及Https证书 一.前言 二.准备阶段 三

    2024年01月23日
    浏览(44)
  • 线性代数的学习和整理13: 定义域,值域,到达域 和单射,满射,双射,反函数,逆矩阵

    目录 1 函数与 向量/矩阵 2 初等数学的函数 2.1 函数 2.2 函数的定义:定义域  →映射→  值域 3  高等数学里的函数:定义域和陪域/到达域(非值域)的映射关系 3.1 函数 3.2 单射,满射,双射等都是针对定义域 和 陪域的 3.3 易错地方:值域较小且是被决定的 3.4 单射,满射,

    2024年01月20日
    浏览(39)
  • 解决:使用hexo deploy部署之后,github page的custom domian自定义域名失效

    使用hexo搭建个人博客网站,将个人博客托管导github上,并设置在github page设置custom damain自定义域名 然后每次部署完,自定域名都会消失 在hexo项目的source文件夹下新建CNAME文件,里面填入你的域名,并保存,这样每次hexo deploy后,github page就不会出现域名重置了

    2024年03月14日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包