mirror of
https://github.com/v2board/v2board.git
synced 2024-11-10 17:49:11 +08:00
quantumultx: fix wss
This commit is contained in:
parent
fb732a8307
commit
1b4d03044d
@ -7,26 +7,43 @@ class QuantumultX
|
||||
{
|
||||
public static function buildVmess($uuid, $server)
|
||||
{
|
||||
$uri = "vmess=" . $server->host . ":" . $server->port . ", method=none, password=" . $uuid . ", fast-open=false, udp-relay=false, tag=" . $server->name;
|
||||
if ($server->tls) {
|
||||
$tlsSettings = json_decode($server->tlsSettings);
|
||||
if ($server->network === 'tcp') $uri .= ', obfs=over-tls';
|
||||
if (isset($tlsSettings->allowInsecure)) {
|
||||
// Default: tls-verification=true
|
||||
$uri .= ', tls-verification=' . ($tlsSettings->allowInsecure ? "false" : "true");
|
||||
}
|
||||
if (isset($tlsSettings->serverName)) {
|
||||
$uri .= ', obfs-host=' . $tlsSettings->serverName;
|
||||
$config = [
|
||||
"vmess={$server->host}:{$server->port}",
|
||||
"method=chacha20-poly1305",
|
||||
"password={$uuid}",
|
||||
"tag={$server->name}"
|
||||
];
|
||||
if ($server->network === 'tcp') {
|
||||
if ($server->tls) {
|
||||
$tlsSettings = json_decode($server->tlsSettings);
|
||||
array_push($config, 'obfs=over-tls');
|
||||
if (isset($tlsSettings->allowInsecure)) {
|
||||
array_push($config, $server->allow_insecure ? 'tls-verification=true' : 'tls-verification=false');
|
||||
}
|
||||
if (isset($tlsSettings->serverName)) {
|
||||
array_push($config, "obfs-host={$tlsSettings->serverName}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($server->network === 'ws') {
|
||||
$uri .= ', obfs=' . ($server->tls ? 'wss' : 'ws');
|
||||
if ($server->tls) {
|
||||
$tlsSettings = json_decode($server->tlsSettings);
|
||||
array_push($config, 'obfs=wss');
|
||||
if (isset($tlsSettings->allowInsecure)) {
|
||||
array_push($config, $server->allow_insecure ? 'tls-verification=true' : 'tls-verification=false');
|
||||
}
|
||||
} else {
|
||||
array_push($config, 'obfs=ws');
|
||||
}
|
||||
if ($server->networkSettings) {
|
||||
$wsSettings = json_decode($server->networkSettings);
|
||||
if (isset($wsSettings->path)) $uri .= ', obfs-uri=' . $wsSettings->path;
|
||||
if (isset($wsSettings->headers->Host)) $uri .= ', obfs-host=' . $wsSettings->headers->Host;
|
||||
if (isset($wsSettings->path)) array_push($config, "obfs-uri={$wsSettings->path}");
|
||||
if (isset($wsSettings->headers->Host)) array_push($config, "obfs-host={$wsSettings->headers->Host}");
|
||||
}
|
||||
}
|
||||
|
||||
$uri = implode($config, ',');
|
||||
$uri .= "\r\n";
|
||||
return $uri;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user