我正在开发一个网站,并且由于用户输入或其他原因,我需要显示一些错误消息。 为此,我有一个名为error.php的页面,并使用$ _GET获取错误号。所有错误消息都存储在一个数组中。此方法是否足够安全以便向用户显示错误? - PHP
例子:
header('Location: error.php?n=11');
但我不希望用户在输入的URL错误代码和看到所有其他错误消息。 为了防止这种情况发生,我认为我可以将引荐者页面列入白名单,并且只有在我的白名单中找到引荐者时才显示错误消息。
应该是公平与此类似(尚未对其进行测试;))
$accept = false;
$allowedReferer = array (0=>'page1.php', 'page2.php');
if (in_array($_SERVER['HTTP_REFERER'], $allowedReferer)) {$accept = true;}
if ($accept) { $n=$_GET['n'];echo "Error: " . $errorList[$n];}
是这种方法不够好,以避免间谍用户?
我与PHP5
这样感谢
+1对于盐渍散列。 – 2009-02-19 11:20:39