为什么不能直接域名解析到服务器访问?

新手上路,请多包涵

情况是这样:域名domain.com 别名指向cdn ,cdn指向真实服务器
IP访问返回403,域名直接解析到真实服务器,同样返回403,通常是返回网站内容的.
这是用了什么技术?用什么技术最好?

阅读 7.7k
2 个回答

CNAME(别名)只是为了把你的域名解析调度到CDN服务商的DNS,通过他们的DNS解析返回一个离访客最近的CDN节点IP。然后访客带上host(域名)直接去向这个IP发请求。
通常,CDN服务商的节点设备都专门配置了:禁止IP直接访问。所以会返回403。
只要事先在CDN服务商那里配置了域名,那么他们会把你域名的配置(域名、真实源站地址、缓存策略等)下发到各个CDN节点设备,这样,当有请求到这个设备时,才能做出正确的响应。
所以,域名直接解析到真实服务器,如果该服务器上已经有域名配置,是不会报错的。

新手上路,请多包涵
  1. 主要是由于域名控制权限,的问题不可能个个权威NS都丢给CDN商.Cname记录生效更快,方便灵活切换CDN提供商。若是是根域的话NS记录更新较慢。
  2. 这个应该和 防盗链的原理差不多 主要由 Referer Header 判断。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进