在 Linux 下,该/etc/hosts
文件可用于覆盖 DNS 定义,即将主机名指向不同的 IP。
我需要测试一个新的 VPS。因此我在 /etc/hosts 文件中添加了一行:
123.123.123.123 www.mywebsite.com
我清除了所有缓存并访问了 www.mywebsite.com ,但它仍然显示旧网站。在新网站中,我应该看到默认的 apache 文件“It Works!”
我使用 ping 来测试 IP,它显示了新的 IP。
我使用 wget 来检索 index.html 文件,但它从旧服务器检索该文件。
我使用 DNS Flusher Firefox 插件来清除 DNS 缓存。我还使用 Midori 浏览器隐私浏览功能进行检查(它不缓存 DNS)。
为了测试目的,我为 facebook 添加了一行:
123.123.123.123 www.facebook.com
http://
我工作正常,即在从到 的重定向后,我看到“连接超时”消息https://
我又加了一行:
123.123.123.123 stackoverflow.com
这次,我看到了正常的stackoverflow网站。
如果我添加:
127.0.0.1 www.mywebsite.com
我看到来自本地服务器的未找到消息。
我使用 Windows 进行了检查并发现了相同的行为。
为什么我不能将主机名指向新的 IP?
感谢您的帮助!
编辑:我绕过了我的路由器来检查它是否与它有关,但事实并非如此。