![]() |
Скрипт померает когда засыпает
на php делаю sleep(10*60) на 10 мин
на одних хостингах после выхода из сна скрипт продолжает работать, а на других он так и не продолжает работать подозреваю здесь дело в настройках apacha, как нить это можно обойти? или в чем еще может быть дело? |
apache тут непричем
дело в настройках php.ini должно быть max_execution_time = 0 а там везде max_execution_time = 30 и больше 30 сек скрипт работать не будет |
Цитата:
|
Какую ошибку выдает при отваливании ?
|
Цитата:
в настройках апача есть timeout но он для соединений: - The total amount of time it takes to receive a GET request. - The amount of time between receipt of TCP packets on a POST or PUT request. - The amount of time between ACKs on transmissions of TCP packets in responses. время работы скрипта не видно |
не в конфигах апача а в конфиге php.
<?php phpinfo(); ?> max_execution_time = ? max_input_time =? memory_limit = ? |
Цитата:
max_execution_time = 30 - при таких настройках на моем сервере скрипт работает нормально после sleep'а max_input_time = 60 memory_limit = 64 - каким образом объем памяти влияет на время работы скрипта? |
Хм... Какой таймаут у апача, у сервака на котором все окей пашет?
Дело в том что если сервак рвет соединение то скрипт тоже завершится ибо результаты то отдавать некому будет. есть в PHP параметр , что-то типо IgnoreUserAborted (или как-то так), если рвется соединение или ты нажал крестик в браузере то скрипт плюет на это, но вот не знаю толи в скрипте это прописывается толи в конфиге. Цитата:
З.Ы. Я не знаток PHP и поэтому мои ответы не есть достоверными на все 100% а являются моими рассуждениями, основанными на тех знаниях что все-же есть. |
Цитата:
Цитата:
по-идее после разрыва соединения скрипт должен продолжать работать |
Винда?
Цитата:
|
Цитата:
только что закончил работать тестовый скрипт: <?php echo "Test 3"; ignore_user_abort(true); sleep(2*60*60); $Test = fopen('test.ok','w'); fclose($Test); ?> после двух часов сна он проснулсо и создал файл при настройках которые я указывал выше |
если такие временные промежутки то не разумней ли, было бы юзать crontab? (или at под виндой)
|
Цитата:
|
Цитата:
Так кто-нить знает причину того что кто то убивает скрипт, может быть из-за того что там PHP as CGI и какой-то процесс мониторит то. что процесс PHP долго сидит в памяти и из-за этого его прибивает? |
| Время: 06:45 |