腾讯云、阿里云CDN启用防盗链 百度访问站点服务器返回403

站长群内看到有用户反馈启用腾讯云、阿里云CDN后,通过百度访问站点的任何页面,服务器均返回HTTP状态码403,浏览器提示"You do not have permission to get URL '/' from this server."。

启用CDN后通过百度访问返回状态码403
后来经过一系列的分析发现,原来是他在CDN设置时启用了防盗链且在referer白名单中只设置了自己站点的域名。从百度过来的链接,HTTP head头中的referer是baidu.com,因baidu.com不在CDN的referer白名单中,造成启用CDN后通过百度访问站点返回HTTP状态码403。

解决办法:

1、在referer白名单中增加*.baidu.com及其他搜索引擎、外链referer。如腾讯云CDN防盗链referer白名单设置如下:

启用CDN后通过百度访问返回状态码403
2、禁用CDN的防盗链功能。腾讯云CDN清空referer白名单设置,阿里云CDN选择referer黑名单并确保自己的域名和外链域名不再referer黑名单中。

因为网站的外链可能有很多种情况,所以建议站长尽量不要启用防盗链设置,以免造成用户无法正常访问站点。

THE END