Возможно ли послать HTTP хэдеры 2 или более раз

FireMaster

Guest
Возможно ли послать HTTP хэдеры 2 или более раз

Возможно это глупый вопрос и если бы я хорошо разбирался в HTTP протоколе, то его бы не возникло, но тем не менее, возможно ли послать HTTP хэдеры 2 или более раз за один коннект, т.е. имеем код (написан от руки прям тут, но суть понятна):

PHP:
$conn = fsockopen('tcp://' . $host, $port, $errno, $errstr, $timeout);

$headers  = 'GET ' . $path . ' HTTP/1.0' . PHP_EOL;
$headers .= 'User-Agent: ' . $agent . PHP_EOL;
$headers .= 'Host: ' . $host . PHP_EOL;
$headers .= 'Accept: ' . $accept . PHP_EOL;
$headers .= 'Referer: ' . $referer . PHP_EOL . PHP_EOL;

fwrite($conn, $headers);

$results = '';

while(!feof($conn))
{
      $results .= fread($conn, 1024);
}

echo $results;

fclose($conn);
Отрабатывает он отлично, но тут посетила мысль, что возможно нет смысла закрывать соединения в конце после вывода результатов и можно заново послать хэдеры и считать результат, ведь тогда по идее не будет тратится время на открытие нового соединения чтобы считать следующую страницу, попробовал - не вышло, в связи с этим вопрос, то что я хочу это бред или я просто что-то не так делаю ?

P.S. К воровству контента отношения не имеет, скрипт используется для считывания результатов боев в браузерной текстовой игрушке и для дальнейшей их обработки.
 

FireMaster

Guest
Автор оригинала: SiMM
Connection: keep-alive
Попробовал, не выходит, в хэдерах, которые возвращает удаленный сервер все равно идет Connection: close. Может ли удаленный сервер принудительно запрещать кип элайв ?
 

SiMM

Новичок
Может. Это его личное дело, о котором он заявляет в вернувшихся заголовках.
 
Сверху