В системе Home Assistant можно использоваь встроенный веб сервер для того чтобы раздавать статичные файлы.
www
В системе Home Assistant можно использоваь встроенный веб сервер для того чтобы раздавать статичные файлы.
Чтобы это сделать, нужно создать папку www
— все файлы которые находятся в ней будут доступны.
Папки www
изначально в системе нет. Ее нужно создать. После того как папка создана нужно
обязательно перезапустить Home Assistant.
Новая установка Home Assistant. Создаем папку www
. Папка www
должна быть в той же папке
в которой находится главный конфигурационный файл configuration.yaml.
И создаем в папке www
файл a.txt
с содержимым Hello!
. Вот как выглядит структура файлов:
├── www
│ └── a.txt
├── configuration.yaml
...
├── home-assistant_v2.db
└── secrets.yaml
Перезапускаем Home Assistant и после этого можно увидеть содержимое файла www/a.txt
по адресу
http://IP:8123/local/a.txt
:
Если сделать что-то неправильно (например, не перезапустить сервер после создания папки www
,
или разместить папку www
не там где нужно), то браузер покажет ошибку 404: Not Found
:
www
и local
Все что разамещается в папке www
становится доступно по пути local
в бразуере,
вот несколько примеров:
www/a.txt
-> http://IP:8123/local/a.txt
www/1/2/3/file.png
-> http://IP:8123/local/1/2/3/file.png
www/auto-entities.js
-> http://IP:8123/local/auto-entities.js
Часто возникает вопрос — почему на диске папка называется www
, но в браузере нужно вводить local
?
Ответ на этот вопрос — "Так исторически сложилось". Было бы удобнее если папка на диске и путь
в браузере назывался бы одинаково, но сейчас это не так. Возможно, когда-нибудь в будущем это исправят.
Все что находится в папке www
доступно снаружи без необходимости вводить какой-то логин и пароль.
Но нужно знать имя файла. Так что если у вас сервер Home Assistant открыть наружу, то знайте что
кто угодно сможет прочитать файлы из этой папке если угадает название файла. Например, если у вас
лежит схема квартиры в файле plan.png
, то будьте готовы к тому что другие люди смогут увидеть содержимое этого файла.