Управление GPIO Raspbery-PI через WEB интерфейс. Часть 1

Наш телеграмм канал

Всем привет! Сейчас я попробую рассказать своими словами как можно управлять портами Raspberry через WEB интерфейс. Это нужно для моего проекта “Умный дом” Меня просто достали предложением сделать красивые “кубки” для проекта. Хотя как я уже говорил самое надёжное это провода.

Нам нужно реализовать следующее.

– серверная программа, запущенная на Raspberry Pi (для чтения значений GPIO)
– использование MySQL базы данных (для хранения состояния GPIO)
– использование веб-сервера Apache2 (для контроля GPIO через веб-браузер)

И так приступим. Нам понадобиться подготовить нашу малинку. Установим на неё следующие пакеты:

– Apache веб-сервер
– PHP5
– MySQL сервер
– phpMyAdmin (есть русская версия)

root -доступ

Для начала предоставим нашей малине root доступ.

 

Далее установим Apache веб-сервер.

Не забываем сначала обновиться:

А потом устанавливаем пакет:

Для использования динамических PHP файлов на Raspberry нужно установить модуль PHP и PHP Apache:

После установки модуля PHP, перезапускаем службу Apache:

Что бы проверить сервер Apache, создаём новый файл с именем info.php внутри каталога /var/www/html с помощью следующего кода:

заполняем созданный нами файл info.php вот этим кодом

Установленный Apache сразу помещает в веб-директорию тестовый HTML-файл. Веб-сервер выводит эту дефолтную страницу, если зайти в браузере на http://localhost/ находясь на малине или http://192.168.1.10 находясь на любой машине в локальной сети. Вместо 192.168.1.10 нужно подставить IP-адрес конкретно вашей Raspberry а чтобы узнать его, впишите в терминал команд:

Устанавливаем MySQL

Пишем вот такую команду:

После установки можно проверить, что мы установили mariadb server и он работатет:

Устанавливаем phpMyAdmin

Сначала установим пакет:

Во время установки вам будет представлен следующий экран с вопросом, какой тип сервера вы используете, выберите «apache2» и продолжайте.

Далее нам нужно настроить phpMyAdmin для подключения к базе данных MySQL. Если вы уже создали базу данных, вы можете просто выбрать Да и продолжить, если нет, тогда вернитесь к руководству по настройке веб-сервера и установите MySQL (MariaDB).

При запросе создайте пароль для phpMyAdmin и выберите «OK» для повышения безопасности сервера MySQL (MariaDB) выберите другой пароль, отличный от пароля входа в систему linux.

Теперь вам будет предложено подтвердить пароль.

По соображениям безопасности phpMyAdmin не позволит вам войти в систему как пользователь root, для преодоления этого вам потребуется создать нового пользователя.

Откройте MySQL, используя пользователя root

Будет предложено ввести пароль, который вы вводили на прошлом этапе:

далее вы увидите вот такое окно…

Создаём базу данных с именем «Hydropidb»

Далее мы создадим нового пользователя и пароль, для этого примера имя пользователя будет «pitest», а пароль – «123456».

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

Чтобы дать новому пользователю доступ к новой базе данных, мы должны очистить таблицу привилегий следующей командой. После завершения «Выход» из программы MySQL

Войдите в MySQL как новый пользователь, чтобы подтвердить доступ.

Настройка Apache для PhpMyAdmin

С добавленным phpMyAdmin нам нужно вернуться на сервер Apache и сообщить ему о новой установке, для этого нам нужно отредактировать файл apache2.conf на Pi с помощью следующей команды.

Прокрутите до конца файла и добавьте следующую строку:

Нажмите Ctrl + X, Y и ENTER, чтобы сохранить изменения. Далее мы перезапустим сервер Apache, чтобы активировать наши изменения

После перезапуска сервера вы сможете получить доступ к phpMyAdmin через веб-браузер. Откройте сеанс браузера и в адресной строке введите свой IP-адрес, а затем phpMyAdmin, например.

вам будет представлен экран входа в систему, где вы введете только что созданного пользователя и пароль.

После входа вы увидите экран управления базой данных, показанный ниже.

На этом этапе phpMyAdmin был успешно установлен, и теперь у вас есть визуальный интерфейс для вашей базы данных. Если вы хотите узнать больше о MySQL (MariaDB) и командах для управления базой данных, то я рекомендую TutorialsPoint.

На этом первая часть данного пояснения окончена.

Добавить комментарий