我正在建立一个网站,我拒绝了图片的链接。但在我将facebook“喜欢”链接添加到我的页面后,我意识到我想允许Facebook的热链接。因此,如果用户喜欢我网站上的页面,则Facebook应该能够在用户的个人资料中显示该页面的相关缩略图。所以,我在IIS中添加了一个排除规则,如
如果{HTTP_REFERER}匹配模式^(https?://)?(\ w +。) facebook。(com | net)(/。)* $,则允许。
唉,它对我不起作用。
之后我搜索了一个答案。一篇论坛帖子建议使用“tfbnw”代替facebook,所以我也加入了排除:
^(HTTPS://)?(\ w +)* tfbnw(COM |网)(/.*)* $
但正如你所料,仍然没有机会。
因此,当用户使用like按钮时,我不知道facebook使用哪个URL来请求图像。我很感激任何帮助来揭开这个谜团,以便我可以在我的网站上允许该URL。
注意:如果我禁用了热链接保护,一切正常。所以我们知道我的问题只是热链接保护。
答案 0 :(得分:1)
尝试允许域fbcdn.net
:
^(https?://)?(\w+.)fbcdn.(com|net)(/.)*$
这是facebook的内容分发网络。
答案 1 :(得分:1)
您可以尝试使用IP地址列入白名单吗? FB的所有抓取工具都应来自
返回的IP地址之一whois -h whois.radb.net'!gAS32934'