Проблема в распаковке сжатого(gzip) содержимого тела ответа сервера. Результат распаковки странный, первая половина данных(в начале) распаковывается нормально, вторая половина как-то криво(видно что распаковывается в текст но в нечленораздельный текст) Запись тела ответа в файл идёт так: Код (Text): $h_log = fopen("./debug", 'a'); while ( $response_line = fgets($sock) ) { // чтение из сокета //тут вырезаются хидеры тела ответа сервера + 10 байт сигнатуры gzip, и длина тела fwrite($h_log, $msg, strlen($msg)); } fclose($h_log); Для тестов вот так распаковываю сжатый контент, сохранённый выше в файл: Код (Text): $body = file_get_contents('./debug', 'FILE_BINARY'); echo strlen($body).':'.filesize('./debug'); if ( @gzinflate($body, 0) ) { echo(@gzinflate($body, 0)); }