PHP-重定向请求\u URI-正确的方法?
我创建了一个网站(纯粹的爱好)。我基本上是使用jquery在后台调用所有ajax。是的,它不受SQL注入的影响,所以不会造成任何伤害,但是我不希望用户检查firebug/developer工具并尝试使用URI,然后手动将其输入URL工具栏并获得结果。我该如何去阻止它 例如,用户在URL框中的输入: www.something.com/datapull.php?get=Data&Person=Sean 我有点像:PHP-重定向请求\u URI-正确的方法?,php,redirect,web,Php,Redirect,Web,我创建了一个网站(纯粹的爱好)。我基本上是使用jquery在后台调用所有ajax。是的,它不受SQL注入的影响,所以不会造成任何伤害,但是我不希望用户检查firebug/developer工具并尝试使用URI,然后手动将其输入URL工具栏并获得结果。我该如何去阻止它 例如,用户在URL框中的输入: www.something.com/datapull.php?get=Data&Person=Sean 我有点像: if(strpos($_SERVER['REQUEST_URI'],'/datapu
if(strpos($_SERVER['REQUEST_URI'],'/datapull.php') !== false) { header('Location: /'); }
但当我这样做的时候,我的网络陷入了一个无限循环。我基本上希望网络在任何时候都是:www.something.com
在没有用户手动输入的情况下,我如何将其保存在该地址
我基本上是在后台使用
jquery。是的,它不受SQL注入的影响,所以不会造成伤害
很抱歉,如果我说这无助于阻止SQL注入
不过,我不希望用户检查firebug/developer工具和
尝试使用URI并在URL工具栏中手动输入它,然后获取
结果
如果web浏览器无法访问某个链接,那么您的AJAX也是如此。要详细说明我的评论,您可以尝试以下内容 在ajax请求文件中,您可以检查是否设置了
$\u服务器['HTTP\u REFERER']
,并包含您自己的域名
这里有一个简单的例子
index.php
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Ajax Test</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
</head>
<body>
<div class="ajax_receiver">
</div>
<script>
$('.ajax_receiver').load('data.php');
</script>
</body>
</html>
希望您可以用它来开始。我认为您应该使用绝对路径而不是相对核心来解释更多内容?类似于
header('Location:http://www.something.com)
您可以在ajax结果页面中检查是否设置了$\u服务器['HTTP\u REFERER']
。如果没有设置,这意味着他们可以通过键入地址直接访问页面。很好,这正是我需要的。想不出我在哪里/怎样才能做到这一点。一旦我成功地实现了这个或失败了LOL,我会回复你。。再次感谢!
<?php
print_r($_SERVER);
<?php
if ( ! isset($_SERVER['HTTP_REFERER']) || strpos($_SERVER['HTTP_REFERER'], $_SERVER['SERVER_NAME']) === false)
{
exit;
// or take whatever exit action you want here
}
print_r($_SERVER);