@BedOmar
Веб-разработчик

Как сделать PHP скрипт который будет работать в фоновом режиме?

Привет, интересует вопрос: как сделать скрипт php, который будет работать в фоновом режиме и возможно ли вообще реализовать подобное? Например, есть страница со скриптом jquery который через ajax с интервалом в некоторое время делает запрос к php с файлом, в котором есть какой-то скрипт. Но для того, что бы это все работало, нужно что бы эта страница была открыта кем-то в браузере. Есть ли возможность что бы страница была открыта самим хостингом? Или, возможно, есть какие-то другие методы реализации. И подскажите что как то или иное называется что б я хотя бы знал что искать. Пошастав в интрнете, я нашёл какие-то «php демоны», это оно? Если да, то объясните, пожалуйста, доступным языком что это.
  • Вопрос задан
  • 104 просмотра
Пригласить эксперта
Ответы на вопрос 3
@Flappy1488
beginner developer
while (true)
{
}

Запускать через ssh
Запросы делать на api

Либо сокеты
Ответ написан
@Bone
Скорее всего, то что тебе нужно - это php cli, т.е. запускать php скрипт не через web сервер, а из коммандной строки.
Есть ли возможность попасть на сервер по ssh?
Если есть, то можно перейти в папку со скриптом (гуглить команду cd) и запустить скрипт из командной стройки:
php script_name.php
После этого скрипт начнет выполняться и потом выйдет. Если надо чтобы скрипт выполнялся бесконечно, то можно добавить в него бесконечный цикл
while(true) {
}

Ну и ещё в терминале, чтобы скрипт выполнялся фоном можно сделать:
nohup php my_script.php >/dev/null 2>&1 &

Ещё может помочь эта библиотека: https://github.com/TitasGailius/terminal
Ответ написан
OnYourLips
@OnYourLips
Вы меня как эксперта пригласили.

На часть вопроса уже ответили, поэтому отвечу на то. что вас может интересовать: как его запустить.
Запускать через systemd --user
Или через докер.
Оба способа требуют некоторых дополнительных знаний, разных.

Таких возможностей обычно нет только на самых поганых бесплатных хостингах.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы