Запустите скрипт PM2 как www-data из php файла - PullRequest
0 голосов
/ 30 января 2020

Я создаю админ-панель для сайта Laravel и одну из функций для start, stop, restart и проверяю журналы сценариев. Я помещаю папку скриптов в /www/domain/storage/bot.

Это мой код:

public function botOn()
{
    system('sudo pm2 start /www/domain/storage/bot/classic.js  --merge-logs -l /www/domain/storage/bot/classic.log');
    return [
        'message' => 'Bot start',
        'icon' => 'success'
    ];
}

public function botOff()
{
    system('sudo pm2 stop /www/domain/storage/bot/classic.js');
    return [
        'message' => 'Bot off',
        'icon' => 'success'
    ];
}

И код кнопок:

<button type="button" id="botOn">Start</button>
<button type="button" id="botOff">Off</button>

Когда я нажимаю на start Кнопка, панель администратора выдает уведомление о том, что бот включен, но на самом деле ничего не включается. Команда pm2 list также показывает, что бот не в сети. Также я попытался изменить system на exec, но ничего не происходит. Где моя ошибка?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...