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

H3
На сайте с 04.07.2008
Offline
129
771

у меня есть скрипт для работы через прокси

<?
$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.

ВОПРОС: Что надо сделать что бы скрипт работал через все прокси?

Желательно сбросить рабочий пример или ссылку где об этом можно почитать!!!

N
На сайте с 06.05.2007
Offline
419
#1

RFC на http.

вот это неправильно :

@fputs($f, "Host: $proxy2[0]\r\n");

Там должно быть

@fputs($f, "Host: www.site.net\r\n");

Кнопка вызова админа ()
T.R.O.N
На сайте с 18.05.2004
Offline
314
#2
HNO3:
Что надо сделать что бы скрипт работал через все прокси

1. Вы очень странно работаете через прокси.

2. Вы уверены, что провайдер разрешает доступ к портам, отличным от 80?

От воздержания пока никто не умер. Хотя никто и не родился! Prototype.js был написан теми, кто не знает JavaScript, для тех, кто не знает JavaScript (Richard Cornford)
H3
На сайте с 04.07.2008
Offline
129
#3
RFC на http.
вот это неправильно :
@fputs($f, "Host: $proxy2[0]\r\n");
Там должно быть
@fputs($f, "Host: www.site.net\r\n");

Исправил все равно все прокси не работают

1. Вы очень странно работаете через прокси.
2. Вы уверены, что провайдер разрешает доступ к портам, отличным от 80?

1. Я не очень разбираюсь с работой через прокси в php

2. Я работаю с хостинга hostgator

Хотелось бы узнать это я что то не так делаю или через функцию fsockopen нельзя пробится к другим портам (3124,8080)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий