2013-02-01 38 views
2

有人通过cURL阅读我的页面。 如何禁用通过cURL访问我的页面? 他是用这种方法来阅读我的页面禁用cURL阅读

function ajax(){ 
$.ajax({ 
type: "POST", 
url: "../ajaxupdate.php", 
data: { link: "58699768" } 
}).success(function(msg) { 
$('#postcontent').html(msg); 
ajax(); 
}); 
} 
ajax(); 
+0

您正在阅读您自己的页面,因为上面的代码使用相对路径。另外,如何根据你的问题在javascript中使用curl? –

+0

这不是我的脚本。阅读完整的问题 – Nandla

+0

然后它真的更混乱。这个脚本是如何使用脚本'../ ajaxupdate.php'的相对路径的。这意味着它与您的“页面”位于同一台服务器上。另外,假设这是别人的脚本,你如何能够确定用户用来访问你的页面的确切代码?你的问题和代码不相互补充。 –

回答

0

这将是非常困难的原因卷曲提供吨的选项,因此可以绕过几乎所有的安全,除非你要求有活跃的饼干和验证码或登录/密码会话。你可以做的两件事是: 1.以任何你喜欢的方式阻止ip-在脚本中或使用iptables。 2.当你看到他的用户代理时,杀死脚本,这样他/她什么都得不到。

但正如我所说 - 有数以百万计的方法绕过这些代理,切换用户代理和其中的任何东西。

0

您可以通过检查$_SERVER['HTTP_USER_AGENT']来过滤令人讨厌的客户端的连接。

如果它包含字符串curl只是返回一个空白页。

E.g.

if (preg_match('/curl/i', $_SERVER['HTTP_USER_AGENT'])) 
    return; 

显然,这是不是因为curl 100%安全的方法可以设置自定义User-Agent HTTP头。

+0

这可以被绕过。我想要安全的方法 – Nandla

+0

对不起...我认为100%安全的方法不存在,因为curl可以改变任何http头的参数 –