如何限制卷曲connetions

如何限制卷曲connetions

问题描述:

我写了一个小脚本通过卷曲连接到我的API,但是,我需要知道我可以限制进入卷曲的连接,以防止垃圾邮件。如何限制卷曲connetions

这怎么办?

<?php 

function shorten_url($urltoshorten) { 

$url = 'http://nn.pe/api.php?url='.$urltoshorten; 


$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $request); 
// what to post 
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
$result = curl_exec($ch); 
curl_close($ch); 

return $result; 

} 

?> 
+0

你可以在这里展示你的小脚本吗? – 2011-12-27 11:14:37

+0

使用从我的API请求信息的代码进行编辑。无论如何,我可以限制由此做出的连接? – HarryBeasant 2011-12-27 11:18:30

+0

使客户端使用某些凭证进行授权。或者跟踪传入的请求,并在IP超过某个阈值(例如每小时10次)后阻止来自该IP的请求。 – Pradeep 2011-12-27 11:25:25

您可以使用:curl_set_opt(CURLOPT_MAXCONNECTS, 10);限制你通过卷曲进行的连接。或者你可以创建一个表并记录请求连接的IP。

希望这会有所帮助。

+0

由于我粘贴的脚本位于请求者一方,它将允许人们改变最大连接数,那么你放在那里的卷曲能够进入PHP API,并设置最大连接10,每小时,分钟? – HarryBeasant 2011-12-27 11:38:50

+0

它不是最小或小时,直到连接关闭。 CURLOPT_CONNECTTIMEOUT可用作尝试连接时等待的秒数。 – AlphaMale 2011-12-28 05:01:17

+0

将最大值设置为1000这样的大数字有什么可能的缺点?仅仅是内存使用情况?这也是限制缓存大小的权利?它是否也会限制并发连接的数量? – CMCDragonkai 2015-05-15 05:32:11