Commit Graph

35 Commits

Author SHA1 Message Date
Dlphine
5dd4cd4bc9 fix: replace raw array access with data_get() to prevent Undefined array key
- Migrate $protocol_settings['key'] to data_get($protocol_settings, 'key') across General, SingBox, Shadowrocket, Surfboard, QuantumultX
- Prevents PHP 8 Undefined array key fatal errors when optional protocol_settings fields are missing
- Same class of bug that caused #735
2026-03-27 13:51:28 +08:00
xboard
7dacb69275 feat: Trojan Reality support and protocol distribution optimizations 2026-03-23 14:56:41 +08:00
xboard
b55091a066 feat: Refactor uTLS & Multiplex Support, Node Status Push Optimization
- Server/ServerSave/Server.php: Unified utls and multiplex schema, validation, and defaults for vmess/vless/trojan/mieru protocols, enabling more flexible protocol configuration.
- Protocols (SingBox/ClashMeta/Shadowrocket/Stash/General): All protocol generators now support utls (client-fingerprint/fp) and multiplex options. Removed getRandFingerprint, replaced with getTlsFingerprint supporting random/custom fingerprints.
- Helper.php: Refactored TLS fingerprint utility to support object/string/random input.
- ServerService: Abstracted updateMetrics method to unify HTTP/WS node status caching logic.
- NodeWebSocketServer: Improved node connection, status push, and full sync logic; adjusted log levels; clarified push logic.
- ServerController: Reused ServerService for node metrics handling, reducing code duplication.
- Docs: Improved aapanel installation docs, added fix for empty admin dashboard.
2026-03-16 23:09:56 +08:00
xboard
010275b09e feat: introduce WebSocket sync for XBoard nodes
- Implement Workerman-based `xboard:ws-server` for real-time node synchronization.
- Support custom routes, outbounds, and certificate configurations via JSON.
- Optimize scheduled tasks with `lazyById` to minimize memory footprint.
- Enhance reactivity using Observers for `Plan`, `Server`, and `ServerRoute`.
- Expand protocol support for `httpupgrade`, `h2`, and `mieru`.
2026-03-15 09:49:11 +08:00
xboard
6efedcebd4 refactor: move subscribe templates to dedicated database table 2026-03-11 05:47:29 +08:00
xboard
f289f68898 fix: resolve vmess http-opts headers null issue in subscription generation 2025-09-12 10:45:31 +08:00
xboard
60f1fea356 fix(subscribe): fix vmess+tcp+http subscription in general and singbox 2025-08-24 18:39:00 +08:00
xboard
af747c61cc refactor(singbox): use data_get for array access 2025-08-23 11:19:37 +08:00
Xboard
d4cd3d4bb6 Merge pull request #638 from zytakeshi/fix/singbox-sni-domain-issue
fix: correct SNI domain configuration paths in SingBox protocol
2025-08-21 18:07:53 +08:00
Takeshi Matsumoto
c38fd1b7b7 fix: correct VMess TCP transport configuration in SingBox protocol
- Only add HTTP transport when network_settings.header.type is not 'none'
- Use pure TCP (null transport) when header type is 'none' or unset
- Align with General protocol implementation and VMess specification

This prevents unnecessary HTTP transport layer when using pure TCP.
2025-08-16 03:08:56 +09:00
Takeshi Matsumoto
f86dd89cdd fix: correct SNI domain configuration paths in SingBox protocol
- Fix Trojan protocol to use 'server_name' instead of 'tls_settings.server_name'
- Fix Hysteria protocol to use 'tls.server_name' instead of 'tls_settings.server_name'
- Align with Server model configuration and General protocol implementation
- Resolves missing SNI domains in sing-box configuration generation

This fixes the inconsistency where SNI domains were missing for certain
protocols while working correctly in General protocol handler.
2025-08-16 02:44:17 +09:00
xboard
508caebdcd refactor: refactor subscription delivery logic, change payment return_url to origin_url concatenation
- Unify protocol filter configuration to client.type.field (dot-path, three-segment) format, support strict whitelist mode
- Refactor AbstractProtocol and all protocol classes for more flexible and maintainable subscription delivery
- Change payment callback logic: use origin_url concatenation instead of return_url for more accurate redirects
2025-07-18 15:42:58 +08:00
xboard
272dbd2107 feat: optimize settings management and admin functionality
- Add system log cleanup functionality with batch processing
- Optimize v2_settings table performance by unifying value storage
- Add comprehensive client support list for one-click subscription
- Fix QR code subscription links for specific node types
- Fix route addition issues in admin management panel
- Enhance admin system controller with log management APIs
2025-06-21 12:11:27 +08:00
xboard
bf3a9112f2 fix: improve node filtering by client base_version, set subscription content-type, and add hop_interval support for hysteria2
- Refactor node filtering logic to correctly handle client base_version requirements.
- Set appropriate Content-Type header for subscription responses.
- Add support for hop_interval configuration in hysteria2 node delivery.
2025-05-24 13:45:32 +08:00
xboard
fc5a957ddd feat: add AnyTLS support and improve system functionality
- Add AnyTLS protocol support
- Add system logs viewing in admin panel
- Refactor client subscription delivery code
- Refactor hook mechanism
- Add plugin support for Shadowsocks protocol
- Add CSV export option for batch user creation
- Fix mobile admin login page width display issue
2025-05-22 17:58:22 +08:00
Fearless
711151c7d6 add anytls support 2025-05-19 09:25:52 +08:00
xboard
417590e99c feat(admin): optimize subscription template configuration and add Surfboard subscription template
- Improved the code structure for subscription template configuration.
- Added a new feature in the admin panel to configure Surfboard subscription templates.
2025-05-16 05:13:49 +08:00
xboard
8377962836 fix(singbox): resolve port type casting and add port hopping support 2025-05-10 17:10:41 +08:00
xboard
97e7ffccae fix: resolve PHPStan static analysis warnings 2025-05-07 19:48:19 +08:00
xboard
db235c10e8 Revert "fix: resolve PHPStan static analysis warnings"
This reverts commit 2d3e4b4a95.
2025-04-14 21:23:08 +08:00
xboard
2d3e4b4a95 fix: resolve PHPStan static analysis warnings 2025-04-14 02:12:42 +08:00
xboard
e297cb9b77 fix: Remove forced direct IP rule for nodes 2025-02-23 00:33:03 +08:00
xboard
b7e87ba18d feat: Add TUIC protocol support and fix user filtering/export issues 2025-02-23 00:13:04 +08:00
xboard
8098cf3ee2 feat(admin): Add subscription template configuration and fix minor issues 2025-02-16 18:05:03 +08:00
xboard
0f43fff242 feat: new xboard 2025-01-21 14:57:54 +08:00
Xboard
de18cfe596 fix: resolve hy2 speed limit dispatch issue in Singbox client 2024-12-09 18:45:12 +08:00
Xboard
fd37291716 feat: add appname display in hiddify
add profile-title header to sing-box subscribe
2024-11-08 17:26:31 +08:00
xboard
163d09c71b feat: Singbox、clash订阅增加绕过服务器地址规则
1、优化订阅下发代码
2、singbox、clash、meta订阅下发增加绕过服务器地址规则,防止重复代理
2024-07-19 06:29:35 +08:00
xboard
fd52795f49 fix: 修复ss2022订阅下发密码错误的问题 2024-05-24 22:45:27 +08:00
xboard
5a0e59b103 feat: 增加surge的hy2下发、添加clash meta、shadowrocket、stash订阅hy2端口跳跃的下发 2024-05-14 21:57:36 +08:00
xboard
9dcb9cee32 feat: 增加Vmess tcp http下发支持 2023-12-18 09:40:35 +08:00
xboard
4a6339c9db fix: 修复hiddify无法自动下发hy2节点的问题 2023-12-03 22:17:33 +08:00
xboard
8d4846329e fix: 修复SingBox下发带混淆的hysteria失败的问题 2023-12-03 19:21:05 +08:00
xboard
4d30a8ade5 feat: 新增hiddify自动下发hy2 2023-11-24 00:02:33 +08:00
xboard
65fe7682ff Initial commit 2023-11-17 14:44:01 +08:00