Symfony本地Web服务器自定义域名代理运行不稳定问题排查
问题诱因
- macOS Big Sur系统的DNS解析优先级高于浏览器代理配置,Symfony本地代理的PAC文件仅能处理浏览器层面的代理转发,系统发起的.wip后缀域名DNS查询会优先走公网/内网DNS服务器,直接返回不存在的结果,触发
DNS_PROBE_FINISHED_NXDOMAIN报错。 - 系统重启、网络切换(比如切换WiFi、连接断开重连)后,Symfony CLI首次配置时临时写入的DNS优先级规则被重置,代理服务的解析规则不再生效。
- 本地网络配置的公共DNS/内网DNS服务器优先级高于Symfony本地代理,会直接拦截.wip域名的解析请求。
解决方案
- 优先配置系统hosts文件兜底,操作步骤:
- 终端执行
sudo vim /etc/hosts输入密码后打开hosts配置文件 - 在文件末尾新增一行,格式为
127.0.0.1 你的自定义域名.wip(替换为实际绑定的域名,多个域名可以空格分隔写在同一行,也可以每行写一个) - 保存退出后执行
sudo dscacheutil -flushcache刷新系统DNS缓存
- 终端执行
- 重置Symfony代理配置:
- 依次执行
symfony server:stop、symfony proxy:stop停止所有相关服务 - 执行
symfony proxy:domain:attach 你的自定义域名重新绑定域名 - 依次执行
symfony proxy:start、symfony server:start -d重启服务
- 依次执行
- 调整系统DNS优先级:
- 打开「系统偏好设置→网络→高级→DNS」
- 将
127.0.0.1添加到DNS服务器列表,并拖动到最顶部 - 保存配置后重启当前网络连接
配置完成后可以先在终端执行ping 你的自定义域名.wip验证解析是否正常,若返回127.0.0.1的响应即可正常通过自定义域名访问站点。
内容的提问来源于stack exchange,提问作者Robert Wade
相关产品推荐
相关产品推荐

