Можно ли php-скрипту разрешить неограниченное время выполнения?

компьютеры программирование php

Дело в том, что скрипт должен забрать файл с другого сервера, и неизвестно, сколько времени это займёт, а файл должен быть скачан полностью, иначе возможны ошибки. Можно, конечно, поставить заведомо большое ограничение, например час — ini_set("max_execution_time",3600);, но вот интересно, можно ли вообще не ограничивать?
Кстати, может есть ещё какие-либо требования к ресурсам, если файл размером около 15—20Мб забирается curl'ом с опцией curl_setopt($curl, CURLOPT_FILE, $f);?

Примечание:
> если пользуешся бесплатным хостом…
нет, свой сервер дома.

Примечание:
SergeR, речь о php-cli? Я уже всё больше в эту сторону смотрю. И да, похоже, что это самое прямое решение.
Ответы:
Тут начинаются сложности - где гарантия что браузер будет ждать весь этот час? Такие долгоживущие процессы стоит запускать как отдельные треды операционной системы. Пущай он качает себе сколько влезет. Как обработку закончит - callback в виде get/post запроса.
все можно если осторожно
1 если пользуешся бесплатным хостом то нельзя,
2 если пользуешся платным хостом тоже нельзя,
3 Нужен выделенный сервак и ставиш в конфиге пхп 0 либо ничего и тем самым снимаеш ограничения на выполнение скрипта
Чем это черевато тем что ты тем саммым подвешиваеш систему сервока! скрипт постоянно хавает ресурсы
Ограничения на время выполнения не будет, если не из браузера скрипт запускать, а из командной строки. Если непременно нужно в браузере кнопку "скачать" нажимать, сделай по нажатию кнопки скрипт, который будет запускать консольный скрипт (см. exec() и т.д.).


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.