是否只允许从特定页面访问链接?

时间:2013-06-26 01:05:32

标签: php javascript

我正在尝试拥有一个只能从已批准的网站访问的页面,但我不确切知道如何处理它。我是否只需要提供一段PHP代码,生成随机密钥并将其附加到URL,该密钥仅对一次访问有效?

或者是否可以在其他域设置cookie,然后在最终目的地读取?也许它在初始页面上是1px iframe?

或者我只是想做一些永远不会起作用的事情?

2 个答案:

答案 0 :(得分:1)

在评论中,我们能够澄清......

  

我[zen]只需要一种方法来保护页面,而无需为每个用户提供登录凭据,也不需要任何登录信息。我想的另一个选择是每次点击一个链接时都可以发送一个POST,如果POST包含一个特定的键,我的页面只会允许它们。 [...]

由于检测到欺诈性访问不是问题,我建议您只需针对已批准的网站(和/或网页)列表查看http referer。它对于已批准的网站来说是非侵入性的,并且不会提供比您检查的固定后令牌更差的安全性。

在PHP中,引荐来源位于$_SERVER['HTTP_REFERER']变量中(如果可用)。

答案 1 :(得分:-2)

好的,所以这里是答案

<?php
$server = $_SERVER['SERVER_NAME'];          //Getting Server name
$site_name = "http://$server";              //Creating Website URL from SERVER_NAME
$url_allowed = array("http://www.allowed1.com", "http://www.allowed2.com"); //Add Allowed Website list Here
if(in_array($site_name,$url_allowed)){
echo "<a href='***your link here***'>This is Link</a>";
}else{
echo "This Link is Not Allowed For Your Site";
}
?>