我想知道是否有一种方法只允许访问html网页,如果它是从另一个页面调用的。
例如。 我有一个页面:hello.php。在这个页面上,有一个按钮可以将你重定向到bye.php。
但是,目前,如果有人在浏览器中键入bye.php,他们就可以访问该页面。
如何制作它只能在hello.php上按下按钮时才能访问bye.php,而不是直接将bye.php输入浏览器。
谢谢
答案 0 :(得分:1)
您可以让您的代码查看CGI变量HTTP_REFERER并检查域中是否存在您的域(即它是您网站上的某个页面),如果没有,则拒绝该请求。
它显示浏览器指向您网页时正在查看的页面。
或者如果你想要具体,你可以再检查一个允许链接到它的页面列表。
请注意,这不是一项安全功能;黑客(不使用网络浏览器)可以捏造它并绕过它,但对于你的年龄用户来说,它可以正常工作。
答案 1 :(得分:1)
使用sessions:
用户按下相关按钮时运行的脚本:
<?php
session_start();
if($buttonWasPressed){
//Button was pressed, so create a session variable.
$_SESSION['button_pressed'] = true;
}
然后,在bye.php的顶部,您可以像这样保护它:
<?php
session_start();
if(!isset($_SESSION['button_pressed'])){
//Session variable does not exist - Redirect user back to hello.php
header('Location: hello.php');
exit;
}