【发布时间】:2012-06-16 20:20:10
【问题描述】:
我绞尽脑汁想知道为什么这不起作用。
我想要实现的是限制对我自己网站上的页面的访问,只有来自某个网站,例如 Facebook。
由于链接将发布在 1 个或多个 Facebook 页面和/或我的个人资料上,如果来自 Facebook 和/或发布它的任何其他“页面”,希望脚本能够执行。
例如,如果我在 www.facebook.com/This_is_my_PAGE 上发布我的链接或发布在我的个人资料 www.facebook.com/freds_personal_profile 上或有人分享我在 Facebook 上的链接,希望该页面仅供来自 Facebook 域的人访问。
我在搜索解决方案时找到了下面的脚本,但它正在回显我的错误消息,而不是重定向到有问题的链接。
$target_site = 'https://www.facebook.com/';
if (isset($_SERVER['HTTP_REFERER']) && preg_match("/$target_site/",$_SERVER['HTTP_REFERER'])) {
// do something with people from facebook.com
}
else {
// do something else with everyone else
echo "Sorry, viewable to Facebook fans only.";
}
【问题讨论】:
-
也许您应该在错误消息中回显
$_SERVER['HTTP_REFERER']的内容。这会给你一个提示。 -
HTTP_REFEER 不是强制性标头,它可能不是由浏览器设置的。