开发者社区> 问答> 正文

阿里云CDN申请 CDN 配置 HTTPS 以后还是无法访问是什么原因?

阿里云CDN申请 CDN 配置 HTTPS 以后还是无法访问是什么原因?

展开
收起
Lee_tianbai 2021-01-05 13:11:38 1820 0
1 条回答
写回答
取消 提交回答
  • (1)如果是购买证书以后自定义上传的情况,需要特别注意 SSL 证书根据其适 用范围可以分为:通配符域名、单个域名和多个域名。根据其名称即可查看购买的 证书分别适用于主域名下某个级别的全部子域名、单个域名或者多个域名。用户是 需要保证购买的证书必须适用于加速域名后续才可以添加在 CDN 中生效。如下图所 示的即是添加的 SSL 证书(适用于 www 域名)与 CDN 加速域名(video 的子域名) 是不相匹配的,因此会抛出 NET::ERR_CERT_COMMON_NAME_INVALID 的 错误。 image.png (2)CA 机构提供的证书为了兼容性可能会提供多种形式的证书,CDN 支持的证 书仅有 PEM 格式,并且私钥需要 RSA 格式。如果客户获取得到的是其他格式的证 书是需要转换后然后提交到 CDN 服务中的,常见格式切换格式请参考:CDN 证书格 式说明,而其中的私钥文件如果是 -----BEGIN PRIVATE KEY-----, ----- END PRIVATE KEY----- 样式的话是需要通过如下命令转换成 RSA 格式: openssl rsa -in old_server_key.pem -out new_server_key.pem (3)CDN 是不支持设置密码的私钥。如图 3 所示即是经过加密的私钥,这类私 钥文件是需要经过解密后才可以正常使用,因此 CDN 是无法正常使用的。 image.png (4)证书链需要补全中间证书。对于中级 CA 机构提供的证书,那么拿到的证书 将包括多份证书,而 CDN 需要添加的是包括中间证书的完整证书链,拼接规则为: 服务器证书放第一份,中间证书放第二份,中间不要有空行。另外有一些中间证书 CA 机构提供了不同的服务器使用的证书,由于 CDN 是基于 Tengine 提供服务的, 因此用户是需要使用 Nginx 对应的证书到视频中心的。 (5)CDN 的 HTTPS 技术是基于 SNI 技术实现的。SNI 技术主要是用来在同一 台服务器上配置多个证书的需求,而 SNI 是需要客户端发送请求的时候带有 SNI 的 信息以标识是哪个域名的 SSL 请求,因此 SNI 技术对客户端有一定的要求,部分低 版本系统中的低版本浏览器不满足该要求。SNI 技术对于客户端的限制详细请参考: SNI 对客户端浏览器限制

    2021-01-05 13:12:57
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
阿里云云原生 Serverless 技术实践营 PPT 演讲 立即下载
阿里云产品十月刊 立即下载
基于阿里云构建博学谷平台实时湖仓 立即下载