Веб-сервис iptv.axenov.dev

Содержит исходный код веб-сервиса и консольные инструменты проверки плейлистов и каналов.

Использует playlists.ini с описанием плейлистов для своей работы.

Веб-сайт: iptv.axenov.dev
Зеркало: m3u.su
Исходный код: git.axenov.dev/IPTV/web
Telegram-канал: @iptv_aggregator
Обсуждение: @iptv_aggregator_chat
Дополнительные сведения: git.axenov.dev/IPTV/.profile

О веб-сервисе

Решает две задачи:

  • отображение списка плейлистов, которые можно использовать в своём плеере;
  • сокращение длинных ссылок для удобства ввода с пульта на ТВ и лёгкого запоминания.

Установка и настройка

  1. Развернуть docker-среду
  2. cd iptv-docker; cp .env.example .env
  3. В файле .env поменять необходимые значения
  4. cd ..; docker compose up -d --build

Описание переменных окружения

  • APP_URL -- адрес, на котором расположен сервис: используется для генерации ссылок на плейлисты;
  • APP_DEBUG -- признак отладки сервиса (включает служебный вывод в некоторых местах);
  • APP_ENV -- окружение (см. ниже);
  • APP_TITLE -- название сервиса: используется для вывода на страницах сайта и в их заголовках;
  • APP_TIMEZONE -- часовой пояс, в котором расположен сервер;
  • PAGE_SIZE -- размер страницы для постраничной навигации на главной странице;
  • USER_AGENT -- user-agent для http-клиента, котоырй будет использоваться при подключении к внешним ресурсам;
  • CACHE_HOST, CACHE_PORT, CACHE_PASSWORD, CACHE_DB -- реквизиты подключения к cache/keydb;
  • CACHE_TTL -- количество часов для кэширования информации;
  • TWIG_USE_CACHE -- признак использования кэша компиляции шаблонов Twig.

У каждой переменной есть умолчание на случай отсутствия файла .env или её отсутствия в нём. Но некорректные значения некоторых переменных могут привести к фатальным ошибкам.

Перегрузка переменных окружения

В разных средах можно использовать разные env-файлы для своего удобства.

Для этого следует:

  1. в файле .env переменной APP_ENV указать значение, например, custom или любое другое;
  2. скопировать файл .env в файл .env.custom;
  3. в файле .env.custom указать все или только необходимые переменные со произвольными значениями.

Отсутствие файла .env.custom не вызовет ошибку.

При подгрузке файла .env.custom будут перегружены только те переменные окружения, которые в нём объявлены.

Использованный стек

Лицензия

Исходный код распространяется на условиях лицензии MIT.
См. файл LICENSE для подробностей.

Description
Основной веб-сервис
https://iptv.axenov.dev Readme MIT 717 KiB
Languages
PHP 58.1%
Twig 41.9%