技术解析

用 ip 访问网站,结果却跳转到另一个 ip,请问啥原因?
0
2021-06-30 12:10:19
idczone

我在腾讯云申请了两个云主机 A 和 B ( ip 分别为 139.x.x.x 和 118.x.x.x)都装了 centos 7 。半个月前,在主机 118.x.x.x 上将 nginx 配置弄错了 server 指到了 139.x.x.x 上,所以访问 118 的主机,就会跳转到 139 。

后来发现了问题,改回去了,浏览器缓存也清了,直到目前访问 118 还是一直跳转到 139

即使我把 118 的主机关掉,重装系统,访问 118 依然还是跳转到 139 ,都好两三个星期了。

请大神指教,是否网络中缓存了这个 118->139 的映射,多久能消除,如何消除?


你那个跳转如果是 301 permanent , Chrome 会非常激进地缓存这个 301 ,不清空浏览器缓存则不会消失
你用 curl 测试一下看看吧

curl -I ipaddress 看看是不是 301 了

打开 F12 勾选 disable cache ,然后再访问一次

换个浏览器试试 看看

缓存清了,换浏览器换电脑都是一样会跳转的。

确实是 301 重定向,怎么办,在网络上会缓存多久?
➜ playbooks curl -I 118.x.x.x
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Tue, 25 Apr 2017 02:58:57 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Powered-By: PHP/5.4.16
X-Pingback: http://139.x.x.x/xmlrpc.php
Location: http://139.x.x.x

我用其他人的电脑,完全没有访问过的,而且我把 118 关机了,访问 118 还是会跳转到 139. 怎么破

我已经释放了那个 118 的 ip ,然后转成弹性公网,之后再分配了另外的 ip ,访问新的 ip 不会再跳转了,现在用手机访问那个已经不属于我的 118 的 ip ,已经不会跳转也打不开了(之前我关机 118 的情况下,手机访问 118 ,是会跳转到 139 的),这是不是说明腾讯云内网也有一份缓存?

哎~ 我之前也清了 chrom 缓存的情况下, 118 还是会跳转到 139 ,现在好了,转成弹性公网,废弃 118 的 ip 用新的 ip ,再次清 chrom 缓存,立马生效,不再跳转到 139 了,这说明什么,腾讯云专家快出来!!!

之前重启 Nginx 了吗

我是 ansible 自动部署的,所以必须每次改配置之后启动了 nginx

你这个不就是服务器配置了 301 么。。。

这个 301 只会被访问过的设备记住。
比如 你的浏览器, 你使用的朋友的浏览器,以及某些爬虫,和网站漏洞扫描的脚本。
也就说 除了在 你设置 301 之后访问过你 ip 的机器 ,外其他机器不会受影响,不会在网络上有缓存(除了搜索引擎,不过你域名都没有 搜索引擎里你也上不了榜)

不会吧,确实拿了另一部电脑(之前并没有访问过此 ip ),甚至用了火狐(设置了不缓存任何数据,也清除了所有历史缓存)去连 118 ,还是 301 跳转到 139 。但是当我转成弹性公网(也就是换了一个 ip ) 118 已经释放了不属于我的了,那么,我又用了火狐去连 118 ,于是就无法访问了,也就是讲,有网络中设备记住了这个缓存

这是传说中的鬼打墙

这已经突破了我的网络基础知识。
放个 url 、 ip 之类的出来大家帮你看看吧。

我觉得是运营商缓存的问题,切换到移动,电信,联通试试

要想达到你说的效果需要的不是 nginx 配置跳转, 而是 DNS 设置跳转....

看到楼主是那台 118 的机器都关机了清除缓存后还会跳转笑尿。。。
目测 118 那个 IP 根本不在楼主操作的机器上,或者访问被劫持了

腾讯云帮你 cache 了吧

@qcloud

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服