Работа скрипта через прокси

Статус
В этой теме нельзя размещать новые ответы.

olium

Создатель
Регистрация
12 Авг 2008
Сообщения
40
Реакции
0
у меня есть скрипт для работы через прокси
PHP:
<?
$proxy=file('proxy.txt');
$count=count($proxy);
for($i=0;$i<$count;$i++){
$proxy2=explode(":",$proxy[$i]);
$f = @fsockopen("$proxy2[0]",$proxy2[1],$errno,$errstr,10);
echo $proxy2[0].":".$proxy2[1]." ";
if($f === false){echo "ERROR!!!!";} 
@fputs($f, "GET http://www.site.net/ HTTP/1.1\r\n");
@fputs($f, "Host: www.site.net\r\n");
@fputs($f, "Connection: close\r\n");
@fputs($f, "\r\n");
$ggg=htmlspecialchars(@fgets($f, 100));
echo $ggg."<br>========================<br>";
}
?>
В файле proxy.txt у меня хранится большой список ip: port, так вот если это прокси с портом 80 то все нормально сервер возвращает 200, во всех остальных случаях(3124,8080) и т.д. ошибки.И еще если порт 3128 заменить на 80 то тоже сервер возвращает 200.
ВОПРОС: Что надо сделать что бы скрипт работал через все прокси?
Желательно сбросить рабочий пример или ссылку где об этом можно почитать!!!
 
попробовать использовать curl.
пример:
PHP:
<?
$RequestUrl='http://www.rbc.ru';
$this->cUrl = curl_init();  
curl_setopt($this->cUrl, CURLOPT_URL, $RequestUrl);  
curl_setopt($this->cUrl, CURLOPT_RETURNTRANSFER, 1);  
curl_setopt($this->cUrl, CURLOPT_REFERER, 'http://rapidshare.de/');  
curl_setopt($this->cUrl, CURLOPT_USERAGENT, 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0');  
curl_setopt($this->cUrl, CURLOPT_FOLLOWLOCATION, 1);  
//curl_setopt($this->cUrl, CURLOPT_HEADERFUNCTION, array(&$this,'ReadHeader'));  
//curl_setopt($this->cUrl, CURLOPT_HTTPPROXYTUNNEL, 1);  
curl_setopt($this->cUrl, CURLOPT_PROXY, '195.175.37.72:80');  
 
if ($this->CookieData !== '') {  
curl_setopt($this->cUrl, CURLOPT_COOKIE, $this->CookieData);  
}  
if ($_SERVER['REQUEST_METHOD'] === 'POST') {  
curl_setopt($this->cUrl, CURLOPT_POST, 1);  
curl_setopt($this->cUrl, CURLOPT_POSTFIELDS, $_POST);  
}  
$this->PageContent = curl_exec($this->cUrl);  
echo $this->PageContent;
curl_close($this->cUrl);  
?>
 
у меня есть скрипт для работы через прокси
PHP:
<?
$proxy=file('proxy.txt');
$count=count($proxy);
for($i=0;$i<$count;$i++){
$proxy2=explode(":",$proxy[$i]);
$f = @fsockopen("$proxy2[0]",$proxy2[1],$errno,$errstr,10);
echo $proxy2[0].":".$proxy2[1]." ";
if($f === false){echo "ERROR!!!!";} 
@fputs($f, "GET http://www.site.net/ HTTP/1.1\r\n");
@fputs($f, "Host: $proxy2[0]\r\n");
@fputs($f, "Connection: close\r\n");
@fputs($f, "\r\n");
$ggg=htmlspecialchars(@fgets($f, 100));
echo $ggg."<br>========================<br>";
}
?>
В файле proxy.txt у меня хранится большой список ip: port, так вот если это прокси с портом 80 то все нормально сервер возвращает 200, во всех остальных случаях(3124,8080) и т.д. ошибки.И еще если порт 3128 заменить на 80 то тоже сервер возвращает 200.
ВОПРОС: Что надо сделать что бы скрипт работал через все прокси?
Желательно сбросить рабочий пример или ссылку где об этом можно почитать!!!
а ты не думал что эти порты могут быть закрыты?
 
а ты не думал что эти порты могут быть закрыты?

То есть надо пробывать разные порты, для одного ip(пока не подойдет)?
Я например забрасываю список в allsubmitter и у меня они показываются как рабочии.Причем и через те порты что у моего скрипта не работают (3127,8080,3128 и т.д.)!!!
 
Использовал curl все нормально работает.Когда хочу чекать ПР через прокси подходит только 80 порт или можно использовать другие тогда как??
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху