从.htaccess重定向中免除Facebook抓取工具

时间:2013-10-03 16:52:48

标签: facebook .htaccess redirect

我们最近通过.htaccess强制所有网页都是HTTPS:

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

问题是我从Facebook调试器中检测到“循环重定向路径”,因为原始URL是https,但是og:url是http(所以我们不会丢失所有旧的喜欢),然后它会得到302循环回到https。

如何让Facebook成为此.htaccess规则的例外?

1 个答案:

答案 0 :(得分:11)

This question解决了facebook外部命中的用户代理。您只需添加一个条件来检查它:

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_USER_AGENT} !facebookexternalhit/[0-9]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}