【发布时间】:2011-06-15 17:26:09
【问题描述】:
我现在正在编写一个 PHP 脚本,该脚本向我们学校的服务器发送请求,以获取有关不同课程班级规模的实时信息。当我不使用代理时,脚本运行得非常好,返回一个包含课程编号和可用座位的字符串。但是,我想为学生提供这项服务,我担心如果我提出太多请求,我的 ip 会被阻止。所以我试图通过代理来做到这一点,但没有成功。只要我将 CURLOPT_HTTPPROXYTUNNEL 和 CURLOPT_PROXY 字段添加到我的请求中,就不会返回任何内容。我什至不确定此时如何对其进行故障排除,因为我没有收到任何类型的错误消息。有谁知道发生了什么或如何解决它?
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$proxy = explode(':', $proxy);
curl_setopt($ch, CURLOPT_PROXY, $proxy[0]);
curl_setopt($ch, CURLOPT_PROXYPORT, $proxy[1]);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, 'tempcookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'tempcookie.txt');
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_REFERER, $ref);
$exec = curl_exec($ch);
echo curl_error($ch);
print_r(curl_getinfo($ch));
echo $exec;
用于测试的代理:75.147.173.215:8080
【问题讨论】:
-
为什么不缓存结果而不是作弊?