Closed mclovin-2k closed 2 years ago
您好,
目前 WEB API
还不完善,因为 LeoMoeAPI
的 WebSocket
还没有做长期持久化连接的定时心跳包检测(主要是后端还在开发中)。所以一旦断开不会重连,导致NT获取不到 IP
地理位置信息从而卡住不出结果,后续会修正这个问题。
暂时的解决方案是,您可以使用 nexttrace -c
打开程序的偏好设置面板,然后将默认的地理位置 API 修改为 IPSB
、IPWHOIS
等第三方提供商,应该就可以解决。
感谢您的反馈。
Regards, Leo Shen
OK
您好,
目前
WEB API
还不完善,因为LeoMoeAPI
的WebSocket
还没有做长期持久化连接的定时心跳包检测(主要是后端还在开发中)。所以一旦断开不会重连,导致NT获取不到IP
地理位置信息从而卡住不出结果,后续会修正这个问题。暂时的解决方案是,您可以使用
nexttrace -c
打开程序的偏好设置面板,然后将默认的地理位置 API 修改为IPSB
、IPWHOIS
等第三方提供商,应该就可以解决。感谢您的反馈。
Regards, Leo Shen
OK. Closing.
OK
您好, 目前
WEB API
还不完善,因为LeoMoeAPI
的WebSocket
还没有做长期持久化连接的定时心跳包检测(主要是后端还在开发中)。所以一旦断开不会重连,导致NT获取不到IP
地理位置信息从而卡住不出结果,后续会修正这个问题。 暂时的解决方案是,您可以使用nexttrace -c
打开程序的偏好设置面板,然后将默认的地理位置 API 修改为IPSB
、IPWHOIS
等第三方提供商,应该就可以解决。 感谢您的反馈。 Regards, Leo ShenOK. Closing.
最新的补丁已经修复了这个问题,您可以尝试一下。
OK
您好, 目前
WEB API
还不完善,因为LeoMoeAPI
的WebSocket
还没有做长期持久化连接的定时心跳包检测(主要是后端还在开发中)。所以一旦断开不会重连,导致NT获取不到IP
地理位置信息从而卡住不出结果,后续会修正这个问题。 暂时的解决方案是,您可以使用nexttrace -c
打开程序的偏好设置面板,然后将默认的地理位置 API 修改为IPSB
、IPWHOIS
等第三方提供商,应该就可以解决。 感谢您的反馈。 Regards, Leo ShenOK. Closing.
最新的补丁已经修复了这个问题,您可以尝试一下。
更新了beta2之后,似乎还是不行呃。不过这次有 Log 输出了。 配置和LOG如下:
PS:如果我不通过 Nginx 反代,直接访问 http://xxxx:8080/ ,是正常的。
我猜是您 Nginx
配置写法的问题导致没办法正常反代API,您试试这样
location /trace {
proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
}
我猜是您
Nginx
配置写法的问题导致没办法正常反代API,您试试这样location /trace { proxy_pass http://127.0.0.1:8080; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; }
OK。我改为 location /trace 之后的测试结果:
PS:测试用 VPS 是IPV4 IPV6双栈的,不知道有没有关系。
我猜是您
Nginx
配置写法的问题导致没办法正常反代API,您试试这样location /trace { proxy_pass http://127.0.0.1:8080; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; }
OK。我改为 location /trace 之后的测试结果:
PS:测试用 VPS 是IPV4 IPV6双栈的,不知道有没有关系。
这看起来是VPS上游ISP的策略问题,特别喜欢掐断WebSocket
连接,就是频率有点太高了。我见到比较多出现在Oracle的免费服务器(特别严重)还有诸如Virmach、移动家宽上面。如果连接已经被ISP切断,但是ws还并不知晓(未收到Reset),就会出现这个问题,等会儿再发布一个新的改进版本,但是效果还是需要测试了以后才知道。
我猜是您
Nginx
配置写法的问题导致没办法正常反代API,您试试这样location /trace { proxy_pass http://127.0.0.1:8080; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; }
OK。我改为 location /trace 之后的测试结果: PS:测试用 VPS 是IPV4 IPV6双栈的,不知道有没有关系。
这看起来是VPS上游ISP的策略问题,特别喜欢掐断
WebSocket
连接,就是频率有点太高了。我见到比较多出现在Oracle的免费服务器(特别严重)还有诸如Virmach、移动家宽上面。如果连接已经被ISP切断,但是ws还并不知晓(未收到Reset),就会出现这个问题,等会儿再发布一个新的改进版本,但是效果还是需要测试了以后才知道。
你猜对了,这个真就是 Oracle Cloud 的机器…… 但是解释不了为什么直接访问 8080 端口就正常。
你猜对了,这个真就是 Oracle Cloud 的机器…… 但是解释不了为什么直接访问 8080 端口就正常。
那是因为运气好233,如果放的时间长一点,也会ws崩溃退出的... 现在对于这种频繁掐断 WebSocket
连接还没有提醒的加了一个心跳包用来保活,这次估计应该就不会那么轻易被 Oracle
给断了。
现在发布了 v0.1.11-beta.3
,您再试试。我刚刚也专门在 Oracle
上面跑了一下,似乎没有问题了。
另外如果您主页不是以静态文件缓存在根目录下的话,Nginx
需要这样配置
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
}
location /trace {
proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Real-IP $remote_addr;
}
另外如果您主页不是以静态文件缓存在根目录下的话,
Nginx
需要这样配置location / { proxy_pass http://127.0.0.1:8080; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; } location /trace { proxy_pass http://127.0.0.1:8080; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; }
抱歉。因为这个机器同时兼顾了其它一些用途,location / 无法指向 NextTrace 的端口。
Fixed. Thanks the developers for all the hard works.
你正在使用哪个版本的 nexttrace?
v0.1.10-beta.2 nexttrace_linux_amd64
你看到的异常现象是什么?
Nginx反代 NextTrace 的 Web 端口。浏览器打开WEB端,按下查询按钮后,没有结果。
按下查询按钮后,一直卡在这里,没有结果。
日志也没有输出
Nginx 的部分配置
你期待看到的正常表现是怎样的?
正常显示结果