@iva3682

Почему приходит неполная станица при иcпользовании curl + proxy?

Знатоки протокола HTTP, помогите с проблемой!
Использую curl (в PHP) через прокси (доступа к прокси нет) для получения контента сайта (прокси HTTP). Очень часто приходят страницы неполные, обрываются на полутеге (например
...<p class="myclasдальше контент заканчивается). Закономерностей когда и как оборвется контент нет. Притом если получать не через прокси - проблемы нет. Искал решения в интернете, находил следующие варианты решений:
1) Версию curl обновлял до 7.36 - не помогло.
2) Отправлял заголовок "Expect: " - не помогло.
3) Таймаут ставил в 0 - не помогло.
4) Выставлял опцию CURLOPT_HTTP_VERSION в CURL_HTTP_VERSION_1_0 - если ответ приходит формате HTTP 1.1 то все равно обрывается.
5) Получал контент в обход CURLOPT_RETURNTRANSFER = 1 через ob_start и так далее - не помогло.
6) CURLOPT_HTTP_TRANSFER_DECODING = 0 и CURLOPT_HTTP_CONTENT_DECODING = 0 - не помогло.
Если включать режим VERBOSE в curl, то на проблемных страницах пишет
...
nread <= 0, server closed connection, bailing
curl: (18) transfer closed with outstanding read data remaining
...
Также проблема наблюдается только при Transfer-Encoding: chunked. Наблюдается на очень многих сайтах.
Как все-таки получить контент полностью, или, если это невозможно, как определить что контент пришел неполный?
  • Вопрос задан
  • 778 просмотров
Решения вопроса 2
dimonchik2013
@dimonchik2013
non progredi est regredi
прокси ваш, контролируется?

определить что неполный по
Ответ написан
copist
@copist
Empower people to give
У вас есть доступ к самому прокси?
Проверьте, может ли ваш прокси писать в папку с временными файлами.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы