Xwab
Форумыnavigate_nextПрограммирование на PHP

Зависает file_get_contents
Сообщения
Replikon

Сабж.
Отправляю POST запрос этой функцией.
ГЛАВНОЕ - запрос выполняется.
Но долго, и выдает ошибку "failed to open stream: HTTP request failed!".
То же самое будет, если использовать get_headers ().
Запрос выполняется, но долго блеать и ошибку выдает.
Код приводить нет смысла. Ошибка распространенная и никто не знает в чем причина и как ее решать.
Мож все-таки кто здесь знает?
Хотя врятли...

07 Ноя 2011, 21:35
Kovalsky

Replikon,
использовать curl и ставить
curl_setopt($ch, CURLOPT_TIMEOUT, 3);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);

не вариант?

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

07 Ноя 2011, 21:46
Replikon

Kovalsky, нет, использовать curl не вариант. Я уже его использовал и там еще неадекватнее глюки. А таймаут я уже выставлял.
Ошибка остается, запрос выполняется

07 Ноя 2011, 21:52
Lexan

Replikon, можно через fopen() и тд. попробывать. Там тоже можно передавать собственные заголовки. Примеры в старых граберах.

07 Ноя 2011, 22:26
Okula

Тебя забанил админ сайта который ты грабишь.

08 Ноя 2011, 0:00
Replikon

Okula, нет, граблю через прокси.
добавлено спустя 1 минуту:
Может дело в другом?
Вообщем, запрос долго выполняется ТОЛЬКО к определенному сайту.
Если выполнить этот запрос к любому другому, то он выполняется как надо, быстро, и ошибок не возникает.

08 Ноя 2011, 10:51
Okula

Говорю тебе - либо тебя забанили (прокси могут тоже забанить, список постоянно надо обновлять), либо сайт который грабишь сдох.

08 Ноя 2011, 13:32
Replikon

Okula, хмм, ошибка действительно возникала из-за прокси.

Теперь другой вопрос.
Отправляю POST запросы в цикле.
Привожу подробную распечатку заголовков ответа сервера.
Судя по ним все просто ОК.

НО. Выполняется только первый запрос (к id701).
А все остальные нет.
Я уже замечал такую же хрень при использовании CURL.
Тоже из запросов в цикле только первый выполнялся.
Я тогда подумал, что это курл тупит.
И теперь то же самое повторяется при использовании совершенно другого метода.
Мож у меня что с PHP не то?
Может он как-то соединения запрещает?

Хотя, по заголовкам ответа, повторяю, все запросы выполняются.
Вообщем, вот распечатка:

08 Ноя 2011, 13:42
Ответить на тему