Выполнение команды на rasbian сервере из php

1

Я создал веб-сервер на моем малиновом pi2-устройстве с raspbian.

У меня есть c++ приложение (основное), которое расположено на сервере в /var/www/cpp. В моей php-части я пытаюсь проверить, работает ли приложение c++.

exec("pidof /var/www/cpp/main 2>&1", $output,$return);

if ($return == 0) {
    $isProcessRunning=true;
} else {
    $isProcessRunning=false;
}

Эта работа очень хорошая, если я открываю свою страницу с localhost, но когда я открываю страницу с другого компьютера внутри моей сети, у меня есть эта ошибка:

"pidof" не распознается как внутренняя или внешняя команда, операционная программа или командный файл

У меня есть вырубка, которую php-страница выполняет на ПК, где я открываю страницу. Я пробовал много решений, но никто не работает.

Какое лучшее решение для запуска команды внутри моего сервера с помощью php?

Теги:
debian
raspberry-pi
raspbian

1 ответ

0
Лучший ответ

Пожалуйста, посмотрите на команду, which pidof. Измените команду внутри exec, чтобы включить этот полный путь:

which pidof/bin/pidof

Итоговый код будет:

exec("/bin/pidof /var/www/cpp/main 2>&1", $output,$return);

if ($return == 0) {
    $isProcessRunning=true;
} else {
    $isProcessRunning=false;
}
  • 0
    Спасибо за быстрый ответ. После того, как я запустил «which pidof», я получил такой же результат, как и вы, поэтому я использовал ту же команду, что и вы »/ bin / pidof / var / www / cpp / main 2> & 1». Но теперь у меня есть эта ошибка: «Система не может найти указанный путь.». Я все еще думаю, что проблема в том, что php пытается выполнить команду на ПК, где я открываю страницу, а не на сервере.
  • 0
    ... но вы отметили это как ответ?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню