PHP如果referrer不是.... - 显示错误?

问题描述:

我有一个剧本,我想基本上做到以下几点:PHP如果referrer不是.... - 显示错误?

http://www.site.com/interstitial/HASH 

例如:

http://www.site.com/interstitial/66274bc2836508057cd0335831c16e93 

我基本上要做到这一点,如果人不针对从x.php上面给出的链接,它显示一个错误。

因此,如果页面没有从引用来访问然后发出错误?

if ($_SERVER['HTTP_REFERRER'] != '...') { 
    die('error'); 
} 

但请记住,引用者很容易被欺骗。在x.php中更好地设置会话变量,并在其他页面检查它的存在。

+0

另请注意,可能不会设置$ _SERVER ['HTTP_REFERRER']'。所以我建议你添加一个'isset'或'array_key_exists'检查。并且使用'!==',因为类似的字符串在PHP中实际上是相同的。 – Halcyon