域名无法访问是什么回事?
如果在客户端无法连接已经在CDN上部署的网站,那么可以从以下几点来诊断问题:
- 检查域名对应网站已部署到对应集群,你需要在”网站列表”菜单中查看是否存在域名对应的网站,检查是否已经在网站中绑定了访问域名。
- 检查域名解析是否生效。如果你使用了域名,请确保域名解析生效而且是正确的,可以使用
ping
命令来确认。 - 检查网站是否已经设置了监听端口,在网站设置HTTP和HTTPS中查看,一般为HTTP的
80
端口,HTTPS的443
端口。 - 检查访问客户端的IP是否被waf封禁,可以在客户端上使用curl命令来检查,看看是否能够正常访问,比如(把其中的
baidu.com
换成你自己的域名):curl https://baidu.com
- 检查访问的域名是否在某些国家或地区被封禁,可以在别的地区服务器上使用curl命令来检查,看看是否能够正常访问,比如(把其中的
baidu.com
换成你自己的域名):curl https://baidu.com
404 Not Found 是怎么回事?
出现 404 Not Found
或400 Bad Request
或者类似页面, 通常可以通用以下几个步骤排查:
ping
域名,确保域名已经正确解析到节点IP。- 检查网站设置中是否中是否启用了HTTP和HTTPS,比如你关闭了HTTP,那么在访问
http://你的域名
页面的时候可能就会提示找不到网站。 - 直接访问源站,检查是否是404,如果源站是404,说明是源站的问题,请自行修复,与CDN无关。
- 如果第 3 步中源站是正常的页面,那么可能你需要在源站设置里设置一个回源主机名,可以设置跟源站域名或IP是一样的,然后进行测试,如果此时是正常的,说明修复完毕.
- 如果以上都不行,那么检查你访问的域名是否在网站设置“域名”设置里已经绑定,并在访问日志里确认访问的网站是你设置的那个网站。
502 Bad Gateway 是怎么回事?
出现 502 Bad Gateway
通常说明源站无法连接,可以在访问日志里查看详情(如果开启了访问日志的话)
如果找不到对应的502访问日志,说明你访问的网站不是CDN节点提供的,此时请检查你的域名DNS是否设置正确。
如果没有开启访问日志,请检查:
- 你有没有在源站中设置源站。
- 你是否在源站设置中设置了源站的专属域名,导致用户访问专属域名以外的域名时无法匹配到源站。
- 你填写的源站的协议、域名、端口等信息是否正确。
- 检查源站是否返回了
502
。 - 通过
curl
或者wget
等工具在边缘节点上直接访问源站URL,检查在边缘节点上是否能正常访问源站。 - 如果源站设置有防火墙或者限流设置,请关闭或者设置边缘节点为白名单。
- 关闭你的电脑或手机上的任何代理服务或VPN服务,再访问你的网站,来确认你正在使用的网络环境是否正常。
- 换一个网络环境访问你的网站,来确认你正在使用的网络环境是否正常。
504 Gateway Timeout 是怎么回事?
相关关键词:回源
回源超时
。
出现 504 Gateway Timeout
通常说明源站连接超时,可以在访问日志里查看详情(如果开启了访问日志的话)。此时,请检查:
- 检查源站的协议、域名、端口是否正确;
- 源站是否返回了
504
; - 通过
curl
或者wget
等工具在边缘节点上直接访问源站URL,检查在边缘节点上是否能正常访问源站; - 如果源站设置有防火墙或者限流设置,请关闭或者设置边缘节点为白名单。
在访问日志详情(访问日志后面图标点开)中”综合信息”页面会给出具体的错误,通常是:
dial tcp: xxx.xxx.xxx.xxx .. i/o timeout
– 指的是节点通过TCP连接源站超时;通常是节点和源站的网络连接状况不佳,也有可能是源站设置了一些限流、限速措施,导致边缘节点无法正常连接源站;dial tcp: lookup example.com on xxx.xxx.xxx.xxx
– 指的是节点通过TCP连接域名解析服务超时,请检查节点设置的域名解析服务服务器地址是否正确、是否可以正常连接(Linux
上通常可以查看/etc/resolv.conf
);dial udp: lookup example.com on xxx.xxx.xxx.xxx
– 指的是节点通过UDP连接域名解析服务超时,请检查节点设置的域名解析服务服务器地址是否正确、是否可以正常连接(Linux
上通常可以查看/etc/resolv.conf
);tls handshake timeout
– TLS握手超时
使用CDN后浏览器无限重定向?
如果使用CDN后,浏览器端显示Too Many Redirects
等无限重定向的现象,那么常见的可能原因有如下几个:
- 可能原因1:源站中设置的源站域名和CDN域名一致:如果源站的域名和用户访问CDN的域名是一样的,那么CDN将无法正常读取源站;请务必检查源站设置,防止源站中域名配置和CDN冲突;
- 可能原因2:源站地址是HTTP,但是在源站设置了自动跳转到HTTPS,所以导致源站一直在HTTP-HTTPS之间不断跳转,这种情况下,有以下几个解决方法:
- 取消源站的自动跳转设置(或者根据当前访问域名来判断是否跳转,而不是全部强制跳转);
- 源站地址改为HTTPS的,防止源站自动跳转。
出现 ERR_SSL_PROTOCOL_ERROR 错误是怎么回事?
如果你在浏览器上打开网站出现类似于以下的错误:
此网站无法提供安全连接
xxx.com 发送的响应无效。
ERR_SSL_PROTOCOL_ERROR
通常原因:
- 可能开启了网站443端口,但是没有上传SSL证书导致,你可以上传证书或者关闭
443
端口来解决此问题; - 你没有在对应的网站里绑定当前访问的域名;
- 可能错误地在HTTP里将端口设置为443,请改为在HTTPS里设置这个端口;
- 你的域名解析到了错误的IP,请确保域名解析后的IP地址为所部署的集群节点IP。
开启HTTPS后浏览器提示 ERR_SSL_VERSION_OR_CIPHER_MISMATCH
通常的几个原因:
- 没有上传对应域名的SSL证书导致,请上传证书后再试;
- 绑定的域名没有填写正确,请在”域名”设置里查看域名是否填写正确、是否有同一个域名绑定多个服务的情形。
已经上传了证书但是浏览器提示不安全
如果已经在CDN系统绑定了域名,且已经上传此域名对应的证书,在浏览器上访问时仍然提示”不安全”类似字样,可能的几个原因:
- 通过
ping
命令来确认节点是正确的集群节点; - 你访问的是HTTP网址,而不是HTTPS网址,比如
http://你的域名
,此时请换成HTTPS访问,直接输入https://你的域名
来验证你的HTTPS设置是否成功;如果使用HTTPS访问成功,你只需要在网站设置里设置让HTTP自动跳转到HTTPS即可; - 你访问的域名没有在对应网站的”域名”设置里加入;
- 你访问的域名证书不正确,请检查是否设置了正确的证书;
- 少数用户只上传了二级域名证书却访问顶级域名,或者上传了顶级域名证书却访问二级域名,这时候需要同时上传顶级域名证书和二级域名证书;比如如果你即使上传了
*.example.com
的证书,那么example.com
也是不能访问的,因为前者是二级域名,而后者是顶级域名,你只能再上传一个example.com
的证书; - 找到对应的访问日志(“网站列表” – “访问日志”),观察访问的网站和节点是否正确,如果不正确,说明配置不正确,请纠正后再试
- 如果找不到访问日志,要么是你没有开启对应网站的访问日志,要么是你域名解析到了错误的IP,要么是你的节点上有其他软件服务占用了443端口,请参考本文的“404 Not Found是怎么回事“进行排查
- 你可能正在使用代理或者VPN软件访问你的网站,可以尝试关闭代理和VPN后再尝试看看;如果关闭代理和VPN能正常访问,说明不是CDN设置的问题
源站提示无法找到域名
如果源站提示 Invalid Hostname
之类的错误,或者提示找不到对应的网站,或者显示的是别的域名对应网站的内容,原因是你没有设置正确的回源主机名。默认情况下,回源主机名和终端用户访问的域名一致,但如果你的源站不支持用户直接访问的域名的话,可以在”源站” – “更多设置”中统一修改回源主机名,修改为源站域名;如果你每个源站域名不一样的话,可以点开修改每个源站,然后设置对应的回源主机名;如果源站使用的是特殊的端口,那么你设置的回源主机名中可能也需要添加对应的端口(比如 example.com:9200
)
网站提示 The site owner is unavailable
是怎么回事?
通常是用户账单逾期未支付。
使用CDN后,页面有部分内容不显示怎么回事?
如果使用CDN后,页面有部分内容不显示,比如样式混乱、图片不加载等问题,通常可能有以下可能:
- 你的网页里使用了HTTP和HTTPS两种方式加载资源,如果你现在正在用HTTP协议回源,可以尝试修改为HTTPS协议回源(在单个源站设置里)
- 你的网站使用CDN后,可能产生了跨域问题,请打开浏览器开发控制台(通常为按键盘上的F12),查看具体的报错信息,然后有针对性地修改