Назад | Перейти на главную страницу

запустить php скрипт в фоновом режиме

Есть ли способ запустить php-скрипт и позволить ему работать на сервере до его завершения?

Я использую это

php5-cgi /var/www/script.php -q &

подключение через шпатлевку. Когда я закрываю его (сеанс), скрипт останавливается! Почему он работает в зависимости от сеанса?

Если screen доступно, используйте который. Просто запустите экран, запустите на нем свою команду, отсоедините экран и продолжайте свой веселый путь.

Пытаться nohup и disown:

nohup php5-cgi /var/www/script.php -q &
disown

Также имейте в виду, что PHP имеет ограничение по времени ожидания скрипта, по истечении которого он автоматически прекращает выполнение скрипта. Вы можете изменить max_execution_time установка в вашем /etc/php5/cli/php.ini (по умолчанию 30 секунд).

Это потому, что ваш процесс не отделен от сигнала зависания. Вместо этого используйте следующее.

nohup php5-cgi /var/www/script.php -q 

Вы также можете использовать терминальный мультиплексор, например screen или tmux если вы хотите вернуться к выводу скрипта ...