diff --git a/backend/package.json b/backend/package.json index 7aab782..728bdf0 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "sub-store", - "version": "2.14.33", + "version": "2.14.34", "description": "Advanced Subscription Manager for QX, Loon, Surge, Stash and ShadowRocket.", "main": "src/main.js", "scripts": { diff --git a/backend/src/core/proxy-utils/index.js b/backend/src/core/proxy-utils/index.js index 47dd006..823a507 100644 --- a/backend/src/core/proxy-utils/index.js +++ b/backend/src/core/proxy-utils/index.js @@ -205,6 +205,17 @@ function lastParse(proxy) { proxy.sni = proxy.server; } } + // 非 tls, 有 ws/http 传输层, 使用域名的节点, 将设置传输层 Host 防止之后域名解析后丢失域名 + if ( + !proxy.tls && + ['ws', 'http'].includes(proxy.network) && + !isIP(proxy.server) + ) { + proxy[`${proxy.network}-opts`] = proxy[`${proxy.network}-opts`] || {}; + proxy[`${proxy.network}-opts`].headers = + proxy[`${proxy.network}-opts`].headers || {}; + proxy[`${proxy.network}-opts`].headers.Host = proxy.server; + } return proxy; }