1
feng0vx 2023-03-04 13:25:21 +08:00 via iPhone
运营商搞的吧,web 服务一般不允许了
|
2
XIU2 2023-03-04 14:24:39 +08:00
运营商一般都会限制家宽的 80 443 端口,这好像都算常识了吧。。。
你这种情况是正常的,你发送消息到网站,网站也收到并回复你了。 但在你发送消息后,旁路的设备监测到了并伪造了 RESET 响应返回给你,而因为旁路设备离你更近,因此会比目标网站的正常回应更快的返回给你,你的浏览器收到后就报错 NET_CONNECTION_RESET 了,并会忽略后续发来的正确响应(如果你收到了的话)。 当然,这种情况是你与服务器之间 IP 通顺的情况下,如果是 IP/端口 被封了,那么就是报错超时了。 和 DNS 污染(劫持)原理是一样的,只不过一个是针对 DNS 一个是针对 HTTP (或者说域名)。 |
3
flyingfishzxf OP @XIU2 感谢回答,可能是我描述得不够清楚,我并不是用 80 443 对外提供访问的,80 是我虚拟机的端口,拨号路由器设置了 60000 以上的端口转发到这台虚拟机的 80 端口,我也试过其他端口,都不行。
另一台虚拟机跑了几个 docker ,也一样做了端口转发,都可以成功访问到的,这才是让我觉得奇怪的原因😂 |
4
zddwj 2023-03-04 16:20:03 +08:00 via Android
可能检测到你的流量 web 特征太过明显所以封了,可以试试加个 https
|
5
ysc3839 2023-03-04 17:14:02 +08:00 via Android
@flyingfishzxf 都不行说明是检测了传输内容呀
|
6
blackeeper 2023-03-04 22:00:50 +08:00
具体原因是:你映射的端口和你 nginx 的端口不一致导致的。
比如你的网站检测到未登录就重定向 /login.html 页面,那么你内网打开任意页面就会自动重定向到 192.168.1.1/login.html ,可以直接访问。但是你从互联网访问 www.example.com:6000/xx.html,那么他是重定向到 www.example.com/login.html ,没有带端口,这个时候运营商屏蔽了 80 端口,所以你连接被重置了 |
7
LGA1150 2023-03-04 22:28:24 +08:00
建议两边抓包看看,不排除 PMTU blackhole
|
8
flyingfishzxf OP @blackeeper 我试试把内外端口调成一样的试试看,不过我感觉应该不是这原因,vitepress 生成的是纯静态网页,是单页应用,也没有登录功能,路由是前端路由,重定向也是前端路由自己重定向,服务器只是 nginx ,连 node 都没
|
9
flyingfishzxf OP @LGA1150 谢谢,我会试试看
|
10
flyingfishzxf OP @feng0vx @XIU2 @zddwj @ysc3839 @blackeeper @LGA1150
谢谢大家的回复,我无意中看到 V 站上这个帖子: https://cn.v2ex.com/t/856712 我的问题跟原帖的一模一样,原帖 OP 说是因为机器网关指到了软路由,被软路由的防火墙拦截了,我检查了一下发现我这台虚拟机网关也是指到了软路由,另一台跑 Docker 的网关是正常指到了拨号主路由的就没问题,修改网关,问题解决 |