我有一些网页,我希望只通过内部重定向显示,这样即使有人只是输入了网址,他们也无法通过。要查看它们,您需要浏览重定向到“安全页面”的页面。
答案 0 :(得分:0)
您可以使用$ _SERVER超级全局的HTTP_REFERER。
在受限制页面的顶部:
<?php
// if the referrer is not the page you want the traffic coming from (http://yourdomain.com/allowed_from_page.php), redirect back to that page.
if($_SERVER['HTTP_REFERER'] !== 'http://yourdomain.com/allowed_from_page.php')
header('Location: http://yourdomain.com/allowed_from_page.php');
答案 1 :(得分:0)
在将重定向到指定页面的页面上添加此项:
<form action="./redirectedpage.php" method="POST">
<input type="hidden" name="protection" value="yes"/>
<input type="submit" value="Go to Protected Page">
</form>
在无法直接访问的页面上添加此内容:
<?php
$unlock = $_POST['protection'];
if ($unlock == 'yes'){
?>
**:: YOUR CODE GOES HERE ::**
<?php
} // END OF THE LOCK CODE
else {
// REDIRECTS USER TO HOME IF HE IS NOT UNLOCKED or IF HE ACCESS THE PAGE DIRECTLY
header('Location: http://myhomepage.com/index.php');
}
?>
请记住,这是一个简单的示例,不使用会话和类似物。如果您需要更多“SECURE”,您需要使用SCAPE($ unlock = mysql_real_escape_string($ _ POST ['protection']);)以及其他安全性内容。如果你不明白,请告诉我。