如何使用php curl发布数据时为每个请求设置不同的IP地址

时间:2016-06-27 06:00:20

标签: php html curl

我有一个网站,因为(http://rturesults.info)我的网站上有一个表单,我使用php curl将表单数据发布到另一个网站(http://esuvidha.info)并从中检索结果。问题是,esuvidha.info网站有一种特定的编程方式,如果来自该IP地址的请求超过10个,它会自动阻塞一个IP地址几个小时。

每次有些用户从我的网站发布数据,经过少量提交,php curl停止工作bcos esuvidha.info因为更多请求而阻止了我的IP地址。

我可以为通过我的网站发送的每个请求设置不同的IP地址..

1 个答案:

答案 0 :(得分:4)

您无法更改IP地址,但仍可以更改标题:

$ipAddress = "xxx.xxx.xxx.xxx"; //Custom IP here
curl_setopt($ch, CURLOPT_HTTPHEADER, ["REMOTE_ADDR: $ipAddress", "HTTP_X_FORWARDED_FOR: $ipAddress"]);

这总是不起作用,但如果客户端使用标头来验证您的IP,那么这将是一次点击。

还有另一种方式,但我还没有完成,PHP Manual说:

  

CURLOPT_INTERFACE - 要使用的传出网络接口的名称。   这可以是接口名称,IP地址或主机名。

所以喜欢:

curl_setopt($ch, CURLOPT_INTERFACE, $ipAddress);

免责声明:顺便说一下,您可以与网站所有者联系并获取API来访问其数据库。你为什么要尝试一些非法的(是的!当他们阻止你,你正在尝试解决方法访问他们的网站是非法的)?