Windows10下多个Laravel Homestead实例访问site2.test出现DNS错误如何解决?
配置存在的问题
- 多实例启动路径错误概率最高:你大概率是在第一个Homestead实例的目录下执行的启动命令,导致第二个实例的配置未被加载,192.168.10.11对应的虚拟机没有正常创建,hosts配置的域名无法映射到有效IP,触发DNS错误。
- 次要问题:当前第二个实例的站点路径配置是直接指向
/home/vagrant/site2.test,如果你的WordPress入口文件存放在子目录(比如通用的public目录),后续解析正常后会出现403/404错误,需要对应调整。
修复步骤
- 验证hosts配置有效性
打开Windows管理员命令提示符,执行ping site2.test,如果返回的目标IP是192.168.10.11,说明hosts配置正常;如果返回其他IP,说明你保存hosts时没有管理员权限,重新用管理员身份打开文本编辑器修改hosts后保存即可。 - 正确启动第二个Homestead实例
找到你存放第二个Homestead配置的独立目录(多实例必须每个实例对应单独的Homestead代码目录,不可共用第一个实例的目录),在该目录下打开终端执行vagrant up启动实例,启动完成后执行vagrant status确认实例状态为running。 - 验证网络连通性
实例启动完成后执行ping 192.168.10.11,如果能正常连通,再次访问site2.test即可。如果ping域名通、ping IP也通但浏览器还是报DNS错误,执行ipconfig /flushdns清空系统DNS缓存,再清空浏览器缓存后重试。 - 可选:修正WordPress站点路径
如果访问site2.test出现403/404错误,确认你的WordPress的index.php存放路径,如果是在映射目录的public子目录下,将第二个实例Homestead.yaml的sites配置改为:
修改后执行sites: - map: site2.test to: /home/vagrant/site2.test/publicvagrant reload --provision重载配置即可。
内容的提问来源于stack exchange,提问作者Spencer Hill
相关产品推荐
相关产品推荐

