Closed jia-cheng-zhao closed 2 years ago
好像全是vless的订阅就会
好像全是vless的订阅就会
是的,trojan正常
4.54-1版本依然报错😢
报错不应该去找机场么…
报错不应该去找机场么…
我去问问……
因为之前版本和V2rayN是好的
机厂问题
同样,vless无法订阅。Trojan可以,有其他人反应ss订阅也不行。
我发觉主是机场生成的 vless URL 有问题,在 Query param 里,"?" 是马上接着 "&",例如:
vless://********-****-****-****-************@****.***.org:44850?&security=tls&sni=********.*******.com&type=tcp&headerType=none#节点名称
不知道这个 subscribe.lua 脚本是在哪里维护的,我目前的 workaround 是 ssh 去 openwrt 上把 /usr/share/passwall/subscribe.lua 里 vless URL 稍微修改一下。
原本的代码:
local query = split(Info[2], "?")
local params = {}
for _, v in pairs(split(query[2], '&')) do
local t = split(v, '=')
params[t[1]] = UrlDecode(t[2])
end
我加了几行校验 query[2] 不是 start with "&",是的话就 substring 拿掉:
local query = split(Info[2], "?")
local params = {}
local queryParsed = query[2]
if string.sub(query[2], 1, 1) == "&" then
log("Query param erroneously starts with &, removing it.")
queryParsed = string.sub(query[2], 2)
end
for _, v in pairs(split(queryParsed, '&')) do
local t = split(v, '=')
params[t[1]] = UrlDecode(t[2])
end
申明一下,我完全不会 lua,也不知道 subscribe.lua 在哪个 git repo 可以提交 PR,劳烦哪个大神看到这个可以看一下这个问题,加点 error handling。
描述bug(必填)
节点订阅报错,且订阅失败。 通过url单独导入节点并使用功能正常。
复现步骤(必填)
节点订阅 - 添加 - 保存&应用 节点订阅 - 手动订阅
你想要实现的目的(必填)
节点订阅正常
日志信息(必填!)
截图
系统相关信息(必填)
luci-app-passwall | 4.53-7
Chrome is up to date Version 100.0.4896.127 (Official Build) (64-bit)
其他相关信息