- Changed window size to mobile phone format (400x800) - Removed width condition for ActiveProxyFooter - now always visible - Added run-umbrix.sh launch script with icon copying - Stats cards now display on all screen sizes
🎨 Веб-панель управления обновлениями
📋 Что это?
Простой веб-интерфейс для управления обновлениями Umbrix без редактирования JSON вручную!
┌──────────────────────────────────────────────┐
│ 🚀 Umbrix Update Manager │
│ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ │
│ │
│ 📦 Текущая версия: 2.5.7 │
│ │
│ Версия: [2.5.8____________] │
│ Build: [258______________] │
│ URL: [https://...] │
│ Описание: [Что нового...] │
│ │
│ [🔄 Загрузить] [💾 Сохранить обновление] │
└──────────────────────────────────────────────┘
🚀 Установка
Шаг 1: Загрузите файлы
Загрузите на сервер папку admin/:
update-server/
├── admin/ ← загрузите эту папку
│ ├── index.html ← веб-интерфейс
│ ├── save.php ← скрипт сохранения
│ └── .htaccess ← защита (опционально)
├── api.php
└── latest.json
Шаг 2: Настройте права доступа
# Права на папку admin
chmod 755 admin/
# Права на файлы
chmod 644 admin/index.html
chmod 644 admin/save.php
# latest.json должен быть доступен для записи
chmod 666 latest.json
Шаг 3: Откройте в браузере
Перейдите по адресу:
https://api.umbrix.net/admin/
🎯 Как пользоваться?
1. Просмотр текущей версии
В верхней части автоматически отображается:
- ✅ Текущая версия
- ✅ Build number
- ✅ Статус (STABLE/BETA)
- ✅ Дата публикации
2. Создание нового обновления
-
Заполните форму:
- Версия (обязательно):
2.5.8 - Build Number (обязательно):
258 - URL APK (обязательно):
https://api.umbrix.net/downloads/umbrix-2.5.8.apk - Описание: Что нового в версии
- Дата: Автоматически или выберите
- Мин. версия: С какой версии можно обновляться
- Бета: Поставьте галочку для предварительных релизов
- Версия (обязательно):
-
Нажмите "💾 Сохранить обновление"
-
Готово! Файл
latest.jsonобновлен
3. Загрузка существующих данных
Нажмите "🔄 Загрузить текущую" чтобы заполнить форму данными из latest.json
🔒 Безопасность
Вариант 1: Защита паролем через .htaccess
Создайте файл admin/.htaccess:
AuthType Basic
AuthName "Umbrix Admin Panel"
AuthUserFile /var/www/updates/admin/.htpasswd
Require valid-user
Создайте пароль:
cd /var/www/updates/admin
htpasswd -c .htpasswd admin
# Введите пароль
Вариант 2: Защита через PHP
Раскомментируйте строки в save.php:
// РАСКОММЕНТИРУЙТЕ ЭТИ СТРОКИ:
$provided_password = $_SERVER['HTTP_X_ADMIN_PASSWORD'] ?? '';
if ($provided_password !== $admin_password) {
http_response_code(403);
echo json_encode(['success' => false, 'message' => 'Неверный пароль']);
exit();
}
Затем в index.html добавьте в fetch:
headers: {
'Content-Type': 'application/json',
'X-Admin-Password': 'umbrix2024' // ваш пароль
}
Вариант 3: Скрыть папку admin
Переименуйте папку в что-то секретное:
mv admin secret-panel-f7a8e2b9
Адрес будет: https://api.umbrix.net/secret-panel-f7a8e2b9/
📱 Использование с телефона
Интерфейс адаптивный - можно управлять с телефона!
- Откройте в браузере
- Сохраните на главный экран
- Готово - полноценное PWA приложение
🧪 Тестирование локально
# Запустите PHP сервер
cd update-server
php -S localhost:8000
# Откройте в браузере:
http://localhost:8000/admin/
✨ Возможности
✅ Красивый интерфейс - современный дизайн
✅ Без кода - просто заполните форму
✅ Валидация - проверка всех полей
✅ Автобэкап - старые версии сохраняются
✅ Логирование - все действия записываются
✅ Мобильный - работает на телефоне
✅ Безопасность - защита паролем
📝 Пример использования
Сценарий: Выкатка новой версии
-
Соберите APK:
flutter build apk --release -
Загрузите APK на сервер в
downloads/umbrix-2.5.8.apk -
Откройте админ-панель в браузере
-
Заполните форму:
- Версия:
2.5.8 - Build:
258 - URL:
https://api.umbrix.net/downloads/umbrix-2.5.8.apk - Описание:
🎉 Исправлены ошибки, улучшена стабильность
- Версия:
-
Нажмите "Сохранить"
-
Готово! Пользователи получат уведомление
🐛 Решение проблем
Ошибка "Permission denied"
# Дайте права на запись
chmod 666 latest.json
chmod 777 logs/
Ошибка "Method Not Allowed"
Проверьте, что файл save.php доступен:
curl -X POST https://api.umbrix.net/admin/save.php
Не загружается current version
Проверьте путь к latest.json в save.php:
$json_file = __DIR__ . '/../latest.json';
📊 Структура файлов
update-server/
├── admin/
│ ├── index.html ← Веб-интерфейс
│ ├── save.php ← Скрипт сохранения
│ ├── .htaccess ← Защита (опционально)
│ └── README.md ← Эта инструкция
│
├── api.php ← API для приложения
├── latest.json ← Текущая версия
├── latest.json.backup.* ← Автобэкапы
│
├── downloads/ ← APK файлы
│ └── umbrix-*.apk
│
└── logs/
├── access.log ← Логи API
└── admin.log ← Логи админки
🎓 Дополнительные возможности
Добавить подтверждение
В index.html перед сохранением:
if (!confirm('Точно сохранить обновление v' + formData.version + '?')) {
return;
}
Показать историю версий
Добавьте в save.php:
// Сохранение в историю
$history_file = __DIR__ . '/../history.json';
$history = file_exists($history_file)
? json_decode(file_get_contents($history_file), true)
: [];
$history[] = array_merge($update_data, ['saved_at' => date('c')]);
file_put_contents($history_file, json_encode($history, JSON_PRETTY_PRINT));
✅ Готово!
Теперь у вас есть удобная панель управления обновлениями!
Не нужно:
- ❌ Редактировать JSON вручную
- ❌ Подключаться через SSH
- ❌ Помнить формат файлов
Просто:
- ✅ Открыли браузер
- ✅ Заполнили форму
- ✅ Нажали "Сохранить"
🎉 Приятного использования!