$server['id'], 'remark' => $server['name'], 'server' => $server['host'], 'server_port' => $server['port'], 'password' => $server['passwd'], 'method' => $server['method'], ]; return $config; } public static function buildVmess($server) { $config = [ 'v' => '2', 'ps' => $server['name'], 'add' => $server['host'], 'port' => $server['port'], 'id' => $server['uuid'], 'aid' => $server['v2_alter_id'], 'net' => $server['v2_net'], 'type' => $server['v2_type'], 'host' => $server['v2_host'], 'path' => $server['v2_path'], 'tls' => $server['v2_tls'], 'sni' => $server['v2_sni'], ]; return 'vmess://'.base64_encode(json_encode($config)).PHP_EOL; } //vless://6478f959-c97c-43a2-a7de-256167db0f70@93.179.124.145:51510?encryption=none&flow=xtls-rprx-vision&security=reality&sni=www.amazon.com&fp=chrome&pbk=qhTzYYIgBzDLNYR79oxftqdo1kzL-1_hGJKfqrOliCY&type=tcp&headerType=none#93.179.124.145 //vless://459b4a80-bd61-4ecd-a26b-e9c1809d9e45@shenzhou05.mysynology.net:50452?encryption=none&flow=xtls-rprx-vision&security=reality&sni=www.amazon.com&fp=chrome&pbk=qhTzYYIgBzDLNYR79oxftqdo1kzL-1_hGJKfqrOliCY&sid=0123456789abcdef&type=tcp&headerType=none#%E6%AF%94%E5%88%A9%E6%97%B601 public static function buildVless($server) { $config = [ 'v' => '2', 'ps' => urlencode($server['name']), 'add' => $server['host'], 'port' => $server['port'], 'id' => $server['uuid'], 'aid' => $server['v2_alter_id'], 'net' => $server['v2_net'], 'type' => $server['v2_type'], 'host' => $server['v2_host'], 'path' => $server['v2_path'], 'tls' => $server['v2_tls'], 'sni' => $server['v2_sni'], 'flow' => 'xtls-rprx-vision', 'security' => 'reality', 'fp' => 'chrome', 'pbk' => 'qhTzYYIgBzDLNYR79oxftqdo1kzL-1_hGJKfqrOliCY', 'sid' => '0123456789abcdef', 'spx' => "/", 'headerType' => 'none', 'mode'=>'multi' ]; // 使用数组来生成 URL $url = "vless://{$config['id']}@{$config['add']}:{$config['port']}?" . "mode={$config['mode']}" . "&encryption=none" . "&flow={$config['flow']}" . "&security={$config['security']}" . "&sni={$config['sni']}" . "&fp={$config['fp']}" . "&pbk={$config['pbk']}" . "&type={$config['type']}" . "&headerType={$config['headerType']}" . "#{$config['ps']}".PHP_EOL; return $url; // return 'vless://'.base64_encode(json_encode($config)).PHP_EOL; } public static function buildTrojan($server) { $name = rawurlencode($server['name']); $query = "?sni={$server['sni']}"; // if (array_key_exists('relay_server', $server)) { // $query = "?sni={$server['sni']}"; // } return "trojan://{$server['passwd']}@{$server['host']}:{$server['port']}{$query}#{$name}".PHP_EOL; } }