2

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

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

2 回答 2

0

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

但正如我所说,有数百万种方法可以绕过这些代理、切换用户代理以及介于两者之间的任何方法。

于 2013-02-01T16:47:15.690 回答
0

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

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

例如

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

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

于 2013-02-01T16:47:51.617 回答