6.2 KiB
6.2 KiB
🚀 vServer - Функциональный веб-сервер на Go
Функциональный веб-сервер с поддержкой HTTP/HTTPS, MySQL, PHP, Let's Encrypt и GUI-админкой
👨💻 Автор: Суманеев Роман
🌐 Сайт: vserf.ru
📞 Контакт: VK
🎯 Возможности
🌐 Веб-сервер
- ✅ HTTP/HTTPS сервер с поддержкой SSL сертификатов
- ✅ Let's Encrypt — автоматический выпуск и обновление SSL
- ✅ Proxy сервер — обратный прокси для локальных сервисов
- ✅ PHP 8 — встроенная поддержка (FastCGI пул)
- ✅ MySQL — встроенный сервер базы данных
- ✅ vAccess — система контроля доступа
- ✅ Wildcard — поддержка wildcard-алиасов и сертификатов
🎛️ GUI Админка
- ✅ Управление сервисами — запуск/остановка HTTP, HTTPS, MySQL, PHP, Proxy
- ✅ Управление сайтами — создание, редактирование, удаление
- ✅ Управление прокси — визуальная настройка reverse proxy
- ✅ SSL менеджер — выпуск, перевыпуск, загрузка сертификатов
- ✅ vAccess редактор — настройка правил доступа с drag-and-drop
- ✅ Настройки — конфигурация портов MySQL, PHP, прокси, ACME
- ✅ Тёмная/Светлая тема и RU/EN локализация
🏗️ Архитектура
vServer/
├── 🎯 main.go # Точка входа (Wails)
│
├── 🔧 Backend/ # Основная логика
│ ├── admin/
│ │ ├── go/ # Go backend админки
│ │ └── API.md # Документация API
│ ├── config/ # Конфигурация Go
│ ├── tools/ # Утилиты и хелперы
│ └── WebServer/ # Модули веб-сервера
│ └── acme/ # Let's Encrypt
│
├── 🖥️ front_vue/ # Vue 3 фронтенд админки
│ └── src/
│ ├── Core/ # API, stores, i18n, router
│ └── Design/ # Компоненты, views, стили
│
├── 🌐 WebServer/ # Рабочие файлы сервера
│ ├── config.json # Конфигурация
│ ├── cert/ # SSL сертификаты
│ ├── soft/ # MySQL и PHP
│ ├── tools/ # Логи, error page, vAccess
│ └── www/ # Веб-контент (сайты)
│
├── 🔨 build_admin.ps1 # Скрипт сборки
└── 🚀 vSerf.exe # Готовое приложение
🚀 Установка и запуск
Для пользователей
- Скачайте последний релиз
- Распакуйте архив
WebServer/soft/soft.rarв папкуWebServer/soft/ - Запустите
vSerf.exe— откроется GUI админка - Сервер стартует автоматически, управляйте через интерфейс
🔑 Пароль MySQL по умолчанию:
root
Для разработчиков
# Сборка (проверит/установит Go, Node.js, Wails)
./build_admin.ps1
Скрипт автоматически:
- Проверит зависимости (Go, Node.js, npm) — предложит установить через
winget - Установит Go модули и Wails CLI
- Соберёт Vue фронтенд
- Скомпилирует →
vSerf.exe
🔒 vAccess — Контроль доступа
Гибкая система правил для сайтов и прокси. Настраивается через GUI админку (раздел vAccess).
Возможности:
- IP-фильтрация — разрешение/блокировка по IP
- Контроль путей — ограничение доступа к директориям
- Фильтрация файлов — блокировка по расширениям
- Исключения — пути, к которым правило не применяется
- Кастомные ошибки — редиректы или страницы ошибок
🔐 SSL Сертификаты
Автоматически (Let's Encrypt)
Включите ACME в настройках → сертификаты выпускаются и обновляются автоматически.
Вручную
Загрузите через GUI админку (раздел SSL менеджер) или поместите файлы:
WebServer/cert/{domain}/
├── certificate.crt
├── private.key
└── ca_bundle.crt
💡 Wildcard: один сертификат в папке основного домена покрывает все поддомены.
📝 Логирование
Логи в WebServer/tools/logs/:
| Файл | Содержимое |
|---|---|
logs_http.log |
HTTP запросы |
logs_https.log |
HTTPS запросы |
logs_proxy.log |
Ошибки прокси |
logs_mysql.log |
MySQL операции |
logs_php.log |
PHP ошибки |
logs_config.log |
Конфигурация |
logs_vaccess.log |
Контроль доступа |
logs_acme.log |
Let's Encrypt |
📡 API
Документация всех методов API админки: Backend/admin/API.md