add config example

This commit is contained in:
crutoboy
2026-05-22 08:12:37 +00:00
parent 9047129c4f
commit 37c5327710
2 changed files with 37 additions and 1 deletions

36
.env.example Normal file
View File

@@ -0,0 +1,36 @@
# ==================== НАСТРОЙКИ ПОДПИСОЧНОГО СЕРВЕРА ====================
LISTEN_HOST=0.0.0.0 # IP-адрес, на котором будет слушать сервер (0.0.0.0 — все интерфейсы)
LISTEN_PORT=2096 # Порт, на котором сервер принимает запросы на подписку
URI_PATH=/sub/ # Базовый путь URL для подписки.
# Должен начинаться и заканчиваться на '/'.
# Пример: https://sub.example.com/sub/username
# =====================================================================
# URLS — основные ссылки и конфигурации, которые будут возвращаться пользователю
URLS='{
"all": [
"https://sub.server.com:2096/sub/{}",
"vless://f...0@vpn.example.com:443?security=reality&sni=example.com&type=tcp#user-{}",
"hysteria2://...@vpn.example.com:444?alpn=h3&fp=chrome&security=tls&sni=example.com#user-test"
],
"user": [
"vless://f...0@s2.example.com:4433?security=tls&sni=example.com&type=tcp#other_server_for_user"
]
}'
# ======================== ПОЯСНЕНИЯ К СТРУКТУРЕ ========================
# "all" — конфигурации, которые выдаются **всем** пользователям.
# На место {} автоматически подставляется имя пользователя.
# Ключи, отличные от "all" (например "user") — это индивидуальные
# конфигурации для конкретного пользователя.
# Если пользователь запрашивает подписку и его имя совпадает с ключом —
# будут добавлены ссылки из этого массива.
# Поддерживаемые типы значений:
# • https://... → внешняя подписка (сервер запросит её и объединит)
# • hysteria2://, vless://, vmess://, trojan://, tuic:// и т.д.

View File

@@ -20,7 +20,7 @@ def get_subs_from_server(link: str) -> List[str]:
sub_response = requests.get(link)
decoded = base64.b64decode(sub_response.text).decode('utf-8')
res = decoded.split('\n')
res = filter(None, res)
res = list(filter(None, res))
return res
except:
return []