Laravel Valet环境下Nginx反向代理失效问题排查
问题解决步骤
首先纠正配置里的明显错误:
你的proxy_pass地址写错成了http://127.0.0.0:8000,正确的本地回环地址是127.0.0.1,这行应修改为:
proxy_pass http://127.0.0.1:8000;
接下来按以下步骤排查:
测试Nginx配置语法并重启服务
执行命令验证配置合法性:nginx -t若提示
test is successful,重启Nginx加载新配置(根据系统选择对应命令):systemctl restart nginx # Systemd发行版(Ubuntu 16.04+/CentOS 7+) service nginx restart # 非Systemd系统 brew services restart nginx # macOS Homebrew安装的Nginx确认本地DNS解析正常
检查hosts文件,确保包含以下映射:127.0.0.1 app.trucase.test paylaw.trucase.test不同系统hosts路径:
- macOS/Linux:
/etc/hosts - Windows:
C:\Windows\System32\drivers\etc\hosts
修改后刷新DNS缓存:
# macOS sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder # Linux(systemd-resolved) sudo systemctl restart systemd-resolved # Windows ipconfig /flushdns- macOS/Linux:
确认80端口未被其他进程占用
查看占用80端口的进程:# macOS/Linux sudo lsof -i :80 # 或 netstat -tulpn | grep :80 # Windows netstat -ano | findstr ":80"若发现Valet相关进程(如
php-fpm、dnsmasq)仍在占用,彻底清理:valet stop valet uninstall再次确认80端口已被Nginx占用。
验证Docker容器端口映射
确保容器端口映射绑定到本地可访问地址,例如:docker run -p 127.0.0.1:8000:80 your-image-name可通过
docker ps查看容器端口映射状态,确认本地127.0.0.1:8000已正确映射到容器内部端口。
内容的提问来源于stack exchange,提问作者Nathan Loyer
相关产品推荐
相关产品推荐

