Начало -> Raspberry Pi -> Рестартиране или изключване през HTML страница

Рестартиране или изключване през HTML страница

HTML бутон за рестартиране с потвърждение:

<form method="POST">

<button class="save-btn" name="restart" value="1"
onclick="return confirm('Сигурни ли сте, че искате да рестартирате?')">
Рестартирай
</button>

</form>

HTML бутон за изключване с потвърждение:

<form method="POST">

<button class="save-btn" name="shutdown" value="1"
onclick="return confirm('Сигурни ли сте, че искате да изключите?')">
Изключи
</button>

</form>

В началото на PHP файла (преди HTML-а):

if ($_SERVER['REQUEST_METHOD'] === 'POST') {

    if (isset($_POST['restart'])) {
        exec('sudo reboot');
        exit;
    }

    if (isset($_POST['shutdown'])) {
        exec('sudo shutdown -h now');
        exit;
    }
}

По подразбиране PHP няма право да рестартира или изключи системата. Трябва да се дадат права.

В терминала на Raspberry Pi се въвежда:

sudo visudo

www-data ALL=(ALL) NOPASSWD: /sbin/reboot, /sbin/shutdown

www-data е потребителят на Apache.

Това е опасна функционалност, защото всеки, който има достъп до страницата, може да спре Pi-то. Добре е да има login система или поне проверка за IP.

Удобно е за системи, които работят само в локална мрежа и потребителят знае кое за какво е 🙂

Total views: 4 , Total comments: 0
Leave a comment
No comments

© Авторски права на scs3.eu Всички права са запазени. Проектиран и разработен от fibonachi@abv.bg 2021 - 2026.