我想做的是使用 ajax 从维基百科检索一些数据。之后我离开了客户端脚本并尝试检索一些随机内容。我尝试了 fopen() 和 fread() 方法,但没有成功,然后我找到了一些文章,其中包含使用代理的互联网提供商的代码。由于这是我的情况,我尝试了下面的代码,但没有给出任何响应。
<?php
$opts = array('http' => array('proxy' => 'tcp://10.10.10.101:8080', 'request_fulluri' => true));
$context = stream_context_create ($opts);
$data = file_get_contents('http://www.php.net', false, $context);
echo $data;
?>
好的,所以我尝试了建议的代码,并使用了正确的代理值:
<?php
$url = 'http://www.php.net';
$proxy = '10.10.10.101:8080';
//$proxyauth = 'user:password';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
//curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyauth);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
$curl_scraped_page = curl_exec($ch);
curl_close($ch);
echo $curl_scraped_page;
但它给了我这个错误:HTTP/1.0 403 Forbidden Date: Mon, 02 Jul 2012 09:41:20 GMT Server: Apache Content-Type: text/plain 目标主机被禁止
我不明白为什么它不起作用,以及如何解决问题。