You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

本地(dev)主机域名失效但拦截功能正常?Laravel虚拟机配置求助

解决自定义域名testing.test被浏览器搜索而非解析到虚拟机的问题

我来帮你排查这个问题——既然ping testing.test能正常返回192.168.10.10,说明系统层面的hosts配置是生效的,问题大概率出在浏览器自身的设置或缓存上,试试下面这些针对性的方案:

1. 清除浏览器的DNS缓存

浏览器会单独缓存DNS记录,即使你刷新了系统DNS,它可能还保留着旧的解析结果:

  • Chrome/Edge:在地址栏输入 chrome://net-internals/#dns(Edge是edge://net-internals/#dns),找到「清除主机缓存」按钮点击,之后重启浏览器测试。
  • IE:打开「Internet选项」→「常规」→「删除浏览历史记录」,勾选「缓存的网页和文件」后删除,或者执行ipconfig /flushdns后重启IE。
  • Opera:在设置中搜索「隐私和安全」,找到「清除浏览数据」,勾选「缓存的图像和文件」以及「DNS缓存」(如果有)后清除。

2. 关闭浏览器的DNS over HTTPS(DoH)功能

现在主流浏览器默认开启的DoH会绕过系统hosts,直接使用公共DNS解析域名,这是导致自定义域名被搜索的常见原因:

  • Chrome:设置→隐私和安全→安全→滚动到「高级」部分,关闭「使用安全DNS」选项。
  • Edge:路径和Chrome一致,在设置的「安全」板块中关闭「使用安全DNS」。
  • Opera:设置→隐私和安全→安全,找到「安全DNS」选项并关闭。

3. 强制使用HTTP访问域名

很多浏览器会自动补全HTTPS前缀,而你的Homestead可能没配置对应域名的SSL证书,导致浏览器无法建立连接,转而触发搜索行为。直接在地址栏输入 http://testing.test 试试,不要只输入testing.test

4. 检查hosts文件的格式与编码

虽然你的hosts条目看起来没问题,但偶尔编码或格式问题也会导致解析异常:

  • 用记事本打开hosts文件,确认IP和域名之间是英文空格(不是中文空格或制表符)。
  • 保存时选择「ANSI」编码,避免UTF-8带BOM的格式干扰系统解析。

5. 重启系统DNS客户端服务(Windows系统)

打开「服务」(按下Win+R输入services.msc),找到「DNS Client」服务,右键选择「重启」,之后再打开浏览器测试域名解析。

按照这个顺序试下来,基本能解决浏览器不识别自定义hosts域名的问题。

内容的提问来源于stack exchange,提问作者lovemyjob

火山引擎 最新活动