You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS Big Sur下/etc/hosts配置失效问题求助

解决localhost.com/admin.localhost.com无法访问的问题

1. 修正/etc/hosts文件的重复条目

你的hosts文件中两行都包含localhost,可能引发解析冲突。将所有别名合并到同一行,避免重复定义:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
255.255.255.255 broadcasthost

127.0.0.1 localhost localhost.com admin.localhost.com

::1             localhost localhost.com admin.localhost.com

修改后执行以下命令刷新缓存:

dscacheutil -flushcache
sudo killall -HUP mDNSResponder

2. 排查浏览器缓存与HTTPS自动跳转

  • 强制刷新浏览器缓存:按Cmd+Shift+R(Mac)或Ctrl+Shift+R(Windows/Linux),跳过本地缓存重新加载页面。
  • 部分浏览器会对.com域名强制HTTPS跳转,尝试手动访问http://admin.localhost.com:3000(指定HTTP协议和Rails端口)。
  • 若为Chrome浏览器,可输入chrome://net-internals/#hsts,删除localhost.com和admin.localhost.com的HSTS记录,避免强制HTTPS。

3. 调整Rails应用的绑定范围

默认Rails仅绑定localhost,可能无法通过别名访问。启动时指定绑定到0.0.0.0,允许所有本地域名访问:

rails s -b 0.0.0.0

或修改config/puma.rb(Puma服务器)的绑定配置:

bind 'tcp://0.0.0.0:3000'

重启Rails后尝试访问http://admin.localhost.com:3000。

4. 端口与代理设置检查

  • 若想直接访问admin.localhost.com(不带端口),需将Rails运行在80端口(需root权限):
sudo rails s -b 0.0.0.0 -p 80
  • 关闭系统自动代理发现功能,代理可能干扰本地域名解析,关闭后重启浏览器重试。

5. 验证解析与连通性

用ping确认解析正常:

ping admin.localhost.com

若返回127.0.0.1的数据包,说明解析无问题。再用curl测试HTTP连通性:

curl http://admin.localhost.com:3000

若能返回Rails页面的HTML内容,说明服务正常,问题出在浏览器端。

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 17:55:28