盗链引起的Azure Traiffic Manager Endpoint 配置问题

今天碰到一个有意思的问题:
添加“www.baidu.com” 为Azure Traffic Manager(例如:test.trafficmanager.cn)的一个Endpoint,尝试访问test.trafficmanager.cn 服务器返回504。

Troubleshooting:

  1. 在Azure管理门户确认traffic manager profile以及添加的endpoint是online状态;

  2. Dig DNS确认Azure traffic manager 能够正确DNS 解析;

    ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> @4.2.2.1 tm-baidu.trafficmanager.cn ANY
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22290
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
    
    ;; QUESTION SECTION:
    ;tm-baidu.trafficmanager.cn. IN ANY
    
    ;; ANSWER SECTION:
    tm-baidu.trafficmanager.cn. 300 IN CNAME www.baidu.com.
    
    ;; Query time: 462 msec
    ;; SERVER: 4.2.2.1#53(4.2.2.1)
    ;; WHEN: Thu May 26 09:10:58 2016
    ;; MSG SIZE rcvd: 71
  3. www.baidu.com访问正常;

  4. 另添加一个endpoint “www.amazon.cn”,traffic manager能够正常解析,所以问题应该出在www.baidu.com

结论:
该问题是由于百度对他们的网站资源设置了防盗链,使得非百度信任的页面跳转被block掉。

其他:

    1. 关于盗链与防盗链,请阅读百度百科的这篇文档
原文地址:https://www.cnblogs.com/xingzhou/p/6038008.html