Ivan Razin and Claude Sonnet 4.6
33fef3b27b
Remove empty proxies: block from clash.yaml template
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 14:33:47 +03:00
Ivan Razin and Claude Sonnet 4.6
c1923d5a6e
Update clash.yaml template with new config
...
New rule set: Telegram, WhatsApp, Discord, YouTube groups; oisd_big ad block;
refilter + ru-bundle for Russian sites; torrent direct; Smart/Fastest groups.
Proxy-providers sub URL kept with ${DOMAIN}/${SUB_PATH}/${SUB_ID} placeholders.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 14:32:57 +03:00
Ivan Razin and Claude Sonnet 4.6
9bb6ed5d5c
Serve per-client clash.yaml dynamically via mtr-backend
...
- clash.yaml template: proxy-provider URL uses ${SUB_ID} placeholder
- install_clash_sub() saves to clash.yaml.tpl (DOMAIN/SUB_PATH substituted, SUB_ID left)
- mtr-backend GET /api/clash?sub_id=xxx reads .tpl, fills in subscription ID, returns YAML
- nginx regex ^/sub_path/(?<clash_sub_id>[^/]*)$ proxies Clash UA to
mtr-backend /api/clash?sub_id=$clash_sub_id; regular clients pass through to x-ui
- Removed static /__clash_sub internal location
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 14:03:30 +03:00
Ivan Razin and Claude Sonnet 4.6
d9a51d7199
Fix clash.yaml: move orphaned expected-status back into health-check block
...
expected-status: 204 ended up after the rules section instead of
inside proxy-providers.sub.health-check where it belongs.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 13:49:43 +03:00
Ivan Razin
7aef10624d
Update clash.yaml
2026-06-24 13:44:04 +03:00
Ivan Razin and Claude Sonnet 4.6
138e41574c
Add Clash subscription with User-Agent routing
...
- clash.yaml template (proxy-providers -> x-ui base64 sub URL) in assets/clash/
- install_clash_sub() downloads and substitutes domain/sub_path at install time
- nginx: map $http_user_agent $is_clash_client detects Clash/Mihomo/Stash/Surfboard
- sub_path locations rewrite to internal /__clash_sub on UA match
- /__clash_sub serves /var/www/subpage/clash.yaml as text/yaml
- Regular clients still proxy to x-ui sub port unchanged
- Uninstall cleans /var/www/subpage/
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 13:29:16 +03:00
Ivan Razin and Claude Sonnet 4.6
c548d9934a
Fix upload ERR: raise client_max_body_size to 600m and backend cap to 600MB
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 11:45:37 +03:00
Ivan Razin and Claude Sonnet 4.6
ce5876952d
Increase speed test to 512 MB for both download and upload
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 11:39:09 +03:00
Ivan Razin and Claude Sonnet 4.6
222d748f4e
Replace OpenSpeedTest with custom speed test widget
...
Download uses fetch() with streaming progress on 100MB test file.
Upload sends 25MB to /api/upload on mtr-backend which reads the full
body before responding, giving accurate client-side timing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 11:34:05 +03:00
Ivan Razin and Claude Sonnet 4.6
6bac6aa84c
Increase MTR max packets to 100, update WinMTR instruction to 300 packets
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 11:27:48 +03:00
Ivan Razin and Claude Sonnet 4.6
eeae08de1a
Fix MTR API path: nginx rewrites diag_path prefix, backend accepts full paths
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 11:20:04 +03:00
Ivan Razin and Claude Sonnet 4.6
e2a6505909
Add network diagnostics page with MTR backend and speed test
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 10:57:16 +03:00
Ivan Razin and Claude Sonnet 4.6
411490ab82
Initial commit: modular single-file 3x-ui installer
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-24 10:33:07 +03:00