使页面只可用彻底重定向,而不是直接url
Make Page available only thorough redirect and not by direct url
我有一些网页,我想只通过内部重定向出现,这样即使有人只是在url中键入他们不会通过。要查看它们,您需要通过重定向到"安全页面"的页面。
你可以在$_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');
将此添加到将重定向到指定页面的页面:
<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');
}
?>
请记住,这是一个简单的例子,没有使用会话和类似的东西。如果你需要更多的"安全"你将需要使用,SCAPE($unlock = mysql_real_escape_string($_POST['protection']);),和其他安全的东西。如果有什么不明白的,请告诉我。
相关文章:
- 我的URL重定向安全吗
- 基于屏幕宽度的URL重定向
- HTML5/Javascript验证复选框提交URL重定向
- 基于变量的Javascript URL重定向无法正常工作
- 将使用 history.pushState() 创建的 URL 重定向到基本 URL
- 通过随机 url 重定向传递和添加参数
- 将 URL 重定向到子文件夹
- 如何使用jQuery根据引用/当前URL重定向页面
- Firefox 插件中的 OnBeforeRequest URL 重定向(从 Chrome 扩展程序转换)
- 带有 JavaScript URL 重定向的正则表达式
- 使用 JavaScript 使用 MD5 值进行 URL 重定向
- 当网址路径中有哈希时,Javascript url 重定向
- Angular.js:prettyPhoto URL重定向到Angular路由中提到的默认页面
- 将特定URL重定向到moblile上的另一个URL
- 使用javascript或jquery修改href-或-URL重定向/重写和模式匹配
- 从主页url重定向到url+锚点
- 如何在URL重定向后获得新的URL
- 正在获取另一个URL重定向到的URL
- 循环中的URL重定向
- 如何从一个URL重定向到另一个URL