概述
用户在使用CDN以后出现访问异常,在排查问题的时候,为了确认该问题是否跟源站有关,通常需要绕过CDN,直接去访问源站来对比CDN加速与未加速的访问效果。其中一种方法是更改域名解析记录,另外一种更简便的方法是直接本地Host绑定到源站去访问。本文介绍如何在不修改域名解析的情况下,将域名指向源站。
方案一
可以通过修改hosts文件的方式,在不修改域名解析的情况下,将域名指向源站。具体方法如下。
1.编辑hosts文件
注:在浏览器访问域名时,会优先从hosts文件去获取域名对应的IP地址。如果hosts文件内没有对应的条目,才会通过本地DNS服务器去获取域名解析指向的IP地址。
- 在Windows系统中,该文件保存路径如下所示
C:WindowsSystem32driversetchosts - 在Linux系统中,该文件保存路径如下所示
/etc/hosts
2.在hosts文件末尾,添加条目。本文以如下条目为例,1.1.1.1为源站IP地址,www.test.com为待检查的域名。
3.使用如下命令测试该域名,确认返回的IP地址为1.1.1.1。
ping www.test.com
4.清理浏览器的缓存,并重新开启浏览器访问该网站。此时会从1.1.1.1这个IP地址获取数据,而不使用CDN加速功能。打开浏览器开发者模式,切换到Network标签页,在General下可以看到实际访问到的Remote Address就是1.1.1.1。
注:如果浏览器提示出错,说明源站出现问题。
方案二
使用curl工具来发起HTTP/HTTPS请求,通过指定参数来绑定到源站测试。假设1.1.1.1为源站IP地址,www.test.com为待检查的域名。
1.如没有curl工具,请参考相关文档先安装curl工具
2.Windows请在运行栏cmd打开命令行窗口运行curl命令,Mac/Linux直接在命令行工具下运行即可。
1.源站是80端口
curl -voa "http://www.test.com/" -x 1.1.1.1:80
2.源站是443端口
curl -voa "http://www.test.com/" --resolve www.test.com:443:1.1.1.1
3.源站是自定义端口
curl -voa "http://www.test.com/" -x 1.1.1.1:自定义端口号
注:如果是测试自定义端口(非80/443端口),需要使用HTTP协议。