проблемы с Redirect'ом... в связи с временем исполнения скрипта..

beba

Новичок
проблемы с Redirect'ом... в связи с временем исполнения скрипта..

Доброго времени суток..
Столкнулся с такой вот проблемкой.. никогда такого небыло, поэтому может Вы поможете...

Есть одна функция.. в зависимости от количества обрабатываемых данных выполняется от 20 до 120 секунд...

Сразу же после функции происходит редирект путем отправки заголовка..

так вот.. если функция выполняется до 1-1,5 мин. редирект работает... если же больше, то редирект не работает..

перед функцией для дебуга создаю файл 1.тхт. Записываю надпись begin.
после функции перед редиректом дописываю строчку в этот же файл 1.тхт строчку end.

так вот..
в случае когда редирект срабатывает в файл 1.тхт записываются две строки
Begin
End

в случае когда редирект не срабатывает в файл 1.тхт записываются так же две эти строки.. значит проблема не в функции.. все что нужно, функция делает..

З.ы.
ini_set('display_errors','1')
error_reporting(E_ALL);
никаких ошибок не выдает.. )

Спасибо
 

kruglov

Новичок
Браузер устает ждать и обрывает соединение по таймауту.

Чтобы он ждал, надо ему время от времени что-нибудь отправлять. Пробельчики, к примеру. Правда, тут уже через заголовок редирект не получится. Хотя, можно поробовать браузеру выдавать какой-нибудь левый заголовок типа Beba-Header: и тут пробелы добавлять. Но это только гипотеза и мысль, может, это работать не будет.
 

Trianon

Новичок
заголовки будут удерживаться PHP и до браузера не дойдут, уж коль тот отсохнет по таймауту.

Если на клиенте включен JS, можно выдавать прогресс-индикатор, а потом отправлять скрипт запроса обновления.
Если по дороге вывод никто не буферизирует, конечно. Ну и самому всю буферизацию отключить, само собой.
 

denver

?>Скриптер
А лучше не запускать скрипты по 120 секунд из браузера.
 

beba

Новичок
с заголовком действительно не вышло.. :(
с яваскриптом может быть.. но счас важен результат и скорость..

сделал через крон... получается не очень по актуальности, но зато вариант..

всем спасибо за обсуждение...
 
Сверху