Есть функция, которая с помощью сокетов получает контент страницы с заголовками. Но на некоторых сайтах после заголовков, прямо перед html кодом вставляется набор символов непонятно откуда.
Например
Content-Language: ru
X-Frame-Options: SAMEORIGIN
f23
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Тут f23 лишние.
Что это может быть?
function get_content($hostname, $path)
{
$line="";
//устанавливаем соединение, имя которого
//передано в параметре $hostname
$fd=fsockopen($hostname, 80, $errno, $errstr, 30);
//проверяем успешность установки соединения
if(!$fd) echo "$errstr ($errno)<br>/>\n";
else
{
//формируем HTTP-запрос для передачи его серверу
$headers="GET $path HTTP/1.1\r\n";
$headers.="Host: $hostname\r\n";
$headers.="Connection: Close\r\n\r\n";
//отправляем HTTP-запрос серверу
fwrite ($fd, $headers);
//получаем ответ
while (!feof($fd))
{
$line.=fgets($fd, 1024);
}
fclose($fd);
}
return $line;
}
$hostname="forum.searchengines.ru";
$path="/";
//устанавливаем большее время работы
//скрипта- пока вся страница не загружена,
//она не будет отображаться
set_time_limit(180);
//вызываем функцию
echo get_content($hostname, $path);