Ivan RazinandClaude Opus 4.8 e4fc8a60bb Fix nginx emerg "unknown serve_clash_yaml variable"
The Clash maps ($is_clash_ua, $serve_clash_yaml) were defined only inside
the panel vhost file, but snippets/includes.conf consumes $serve_clash_yaml
and is included by BOTH the panel and reality vhosts. Any state where the
reality vhost loaded while the panel file did not left the variable
undefined globally -> "[emerg] unknown \"serve_clash_yaml\" variable" and
nginx -t failed.

Move both clash maps into a standalone http-level file
(sites-available/00-maps.conf) that is always symlinked into sites-enabled,
so the shared snippet's variable is defined independently of any single
vhost. Reproduced and verified the fix (and the failure without it) with
nginx 1.30.3.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-06 09:42:40 +03:00

3x-ui-pro

Автоматическая установка панели 3x-ui с nginx, SSL, Clash-подпиской и диагностикой сети.

  • Debian 12 / Ubuntu 24
  • Два домена или поддомена (для панели и для REALITY)
  • Автоматическое обновление SSL-сертификатов
  • Поддержка VLESS+REALITY, VLESS+WebSocket, VLESS+XHTTP, Trojan+gRPC — всё через порт 443

Что устанавливается

Компонент Описание
3x-ui VPN-панель с веб-интерфейсом
nginx Обратный прокси, SNI-роутинг
certbot Let's Encrypt SSL
Clash-подписка Автоматическая выдача clash.yaml по User-Agent
Диагностика MTR-трейсер + тест скорости в браузере
Фейковый сайт Случайный HTML-сайт-прикрытие
Бэкап Скрипт резервного копирования

Установка

Шаг 1 — скачать скрипт

wget -qO x-ui-latest.sh https://raw.githubusercontent.com/mozaroc/3x-ui-pro/main/x-ui-latest.sh

Шаг 2 — запустить

bash x-ui-latest.sh -install y -subdomain panel.example.com -reality_domain r.example.com

Замените panel.example.com на домен панели, r.example.com — на домен для REALITY.


Патч

Применить текущие фиксы к существующей установке (без изменений БД):

bash <(curl -fsSL https://raw.githubusercontent.com/mozaroc/3x-ui-pro/main/x-ui-patch.sh)

Удаление

bash x-ui-latest.sh -uninstall y

Параметры запуска

Параметр Описание
-install y Установить
-subdomain <домен> Домен панели и подписок
-reality_domain <домен> Домен назначения для REALITY
-auto_domain y Автоопределение домена (без ручного ввода)
-uninstall y Полное удаление

Clash-подписка

Работает через определение User-Agent — один URL, разное поведение:

  • Clash / Mihomo / Stash → получают clash.yaml с готовой конфигурацией
  • Обычный браузер / другие клиенты → получают стандартную страницу подписки 3x-ui

Ссылку для импорта выводит скрипт после установки.


Бэкап и восстановление

Установить скрипт бэкапа

wget -qO /usr/local/bin/x-ui-backup https://raw.githubusercontent.com/mozaroc/3x-ui-pro/main/assets/backup/x-ui-backup.sh
chmod +x /usr/local/bin/x-ui-backup

Создать бэкап

x-ui-backup backup

Список бэкапов

x-ui-backup list

Восстановить из бэкапа (на чистом сервере, пакеты ставятся автоматически)

x-ui-backup restore /var/backups/x-ui/x-ui-backup-20260101-120000.tar.gz

Бэкап включает: конфиги nginx, БД панели, бинарник 3x-ui, SSL-сертификаты, веб-контент, systemd-юниты, cron, правила UFW.


Диагностика сети

После установки доступна по ссылке, которую выводит скрипт. Включает:

  • MTR-трейс до вашего IP
  • Тест скорости загрузки и отдачи (512 МБ файлы)
S
Description
No description provided
Readme
305 KiB
Languages
HTML 54%
Shell 30.9%
JavaScript 11.5%
Python 3.6%