我在我的域中有几个文件夹,每个文件夹内包含一个index.php文件,用于检查数据库连接是否通过或失败,如果失败,页面被重定向到顶级文件(在所有文件夹之外)称为offline.php。这部分工作很好。我使用的是如果db是脱机重定向的基本格式是:在PHP中获取引用URL和文件夹名称
if (!$dbconnect) {
header("Location: https://www.test.com/offline.php");
}
然后,offline.php页面中,我需要检查,看看哪个文件夹所带来的用户对offline.php页,并根据将他们带到offline.php页面的文件夹向用户显示唯一的消息。
例如:
test.com/test1/index.php重定向到offline.php,消息会说 'test1的把你带到这个页面'
test.com/test2/index。 PHP重定向到offline.php,消息会说'test2带你到这个页面'。
在多个浏览器我试过下面的代码,它总是导致“未知URI”:
$url = 'https://' . $_SERVER['HTTP_REFERER'] ;
if (strpos($url,'test') !== false) {
echo 'test';
} elseif (strpos($url,'test1') !== false) {
echo 'test1';
} elseif (strpos($url,'test2') !== false) {
echo 'test2';
} else {
echo 'unknown uri';
}
建议?
编辑 由于HTTP_REFERER内容不可靠,我已经决定把所有的条件index.php页面中,忘了offline.php页面。巨大的谢谢大家谁提出了建议!
我看到你已经添加了一些东西,因为我早些时候回答。当你只是回显$ _SERVER ['HTTP_REFERER'],会发生什么? – OrganizedChaos
没有显示,只是一个空白页。 – user1172854
$ _SERVER ['HTTP_REFERER']不可靠,请谨慎使用 – 2014-02-17 22:05:02