CDN的HTTPS配置及常见问题-阿里云开发者社区

开发者社区> 胡夫> 正文

CDN的HTTPS配置及常见问题

简介: 本文主要介绍如何在阿里云CDN上配置HTTPS证书以及一些常见问题的解答。
+关注继续查看

什么是HTTPS?

HTTP协议以明文方式发送内容,不提供任何方式的数据加密。HTTPS协议是以安全为目标的HTTP通道,简单来说,HTTPS是HTTP的安全版,即将HTTP用SSL/TLS协议进行封装,HTTPS的安全基础是SSL/TLS协议。HTTPS提供了身份验证与加密通讯方法,被广泛用于万维网上安全敏感的通讯,例如交易支付。
根据2017年EFF(Electronic Frontier Foundation)发布的报告,目前全球已有超过一半的网页端流量采用了加密的HTTPS进行传输。更多HTTPS的信息请参考阿里云CDN官方帮助文档什么是HTTPS加速

CDN如何HTTPS加速

使用了CDN以后,域名解析到了CDN,因此必须要在CDN侧配置HTTPS证书。如果CDN上没有配置HTTPS证书,则CDN只支持HTTP访问;如果CDN上配置了HTTPS证书,则CDN支持HTTP和HTTPS访问。具体配置请参考帮助文档“配置HTTPS证书”。

源站已经配置了HTTPS,CDN上是否还需要配置

HTTPS是客户端和服务端的交互,没有用CDN前,是客户端直接和源站交互,因此源站需要配置HTTPS。使用CDN以后,是客户端和CDN交互,因此如果需要HTTPS访问CDN,则CDN上必须要配置HTTPS证书。源站配置了HTTPS证书只是支持CDN以HTTPS回源到源站。

为什么配置了HTTPS,客户端还是HTTP访问的

客户端是HTTP访问还是HTTPS访问完全是客户端的行为,如果希望客户端强制用HTTPS访问,可以在CDN上开启强制HTTPS跳转

申请CDN免费HTTPS证书失败

在阿里云CDN控制台中申请免费HTTPS证书时,存在一些限制。您可以参考“在CDN的HTTPS设置中申请免费证书失败”的文档去排查和解决。

CDN配置HTTPS以后还是无法访问

(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对客户端浏览器限制

为什么网站开启HTTPS以后显示不全

打开浏览器开发者模式,切换到console页面,如果看到Mixed Content错误,则说明是浏览器安全限制导致的。浏览器要求Https的页面里只能加载Https的地址,不能加载Http的资源。如果您的Https的页面里加载了很多http的资源,这些资源加载不出来的,因此会引起网站显示异常,这种情况需要网站技术人员把htm代码里加载的资源地址都改成https的。
image.png

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《Drupal实战》——1.4 常见配置
本节书摘来自华章计算机《Drupal实战》一书中的第1章,第1.4节,作者 葛红儒,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
946 0
解决alitomcat中无法获得https协议的问题
###事件: 客户反馈,为什么配置https请求,使用request.getScheme()、request.getServerPort(),后台获取访问协议和端口的时候还是获取的http和80。。 ###用户架构: CDN+SLB+EDAS应用 其中 CDN使用443端口回源 SLB配置安全证书使用HTTPS公网IP访问 EDAS使用Alitomcat,server.xml配置
1938 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10249 0
【CDN 常见问题】CDN 接入配置及常见问题
CDN顺利接入线上系统的域名是每个客户头疼的问题,本文档通过详述CDN接入配置各步骤配置以及每部设置常遇到的疑惑点进行解惑,让客户可以将顺利迁移至CDN提供加速服务。
401 0
webpack常见的配置项
使用vue init webpack test(项目文件夹名)命令初始化一个vue项目,cd test,然后安装依赖npm install之后会生成一些默认的文件夹和文件,这些文件和文件夹中有些和配置有关的。
1234 0
Nginx常见配置
Nginx常见配置 一、全局层 #有1个工作的子进程,可以自行修改,但太大无益,因为要争夺CPU,一般设置为 CPU数*核数 worker_processes 1; #一般是配置nginx连接的特性,如1个word能同时允许多少连接 Event { #这是指一个子进程最大允.
1388 0
+关注
胡夫
阿里云OSS+CDN+直播点播视频云..
31
文章
3
问答
来源圈子
更多
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载