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

Laravel使用Valet时blog.test无法显示欢迎页面求助

解决Valet指向Laravel项目显示"It Works"的问题

嘿,这个问题我之前帮好几个Laravel新手处理过,核心原因就是Valet没正确把blog.test域名指向你的Laravel项目public目录,反而 fallback到了Nginx的默认页面(就是你看到的"It Works")。别着急,一步步来就能搞定:

先搞懂valet link到底干了啥

正常情况下,valet link会在Valet的站点配置目录(~/.config/valet/Sites)给你的项目建个软链接,而且Valet会自动识别Laravel项目的public文件夹作为站点根目录——理论上valet link应该自动处理好路径,但有时候缓存、软链接出问题或者域名冲突,就会掉链子。

具体解决步骤

1. 先清掉旧链接,重新来一遍

先进到你的Laravel项目根目录,把可能无效的旧链接删掉,再重新创建:

cd ~/Sites/blog
valet unlink  # 移除当前项目的Valet链接
valet link     # 重新创建链接,默认用目录名当域名(也就是blog.test)
valet restart  # 重启Valet服务,让配置生效

2. 刷新本地DNS缓存

有时候本地DNS缓存会搞鬼,导致域名解析不对,执行下面的命令清一下:

sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder

3. 手动检查Valet的Nginx配置(如果前两步没用)

要是还是显示"It Works",那咱们直接去看Valet生成的配置文件:

  • 打开~/.config/valet/Nginx/blog.test这个文件
  • 找到root那一行,确认它指向的是你Laravel项目的public目录,比如应该是:
    root "/Users/你的用户名/Sites/blog/public";
    
    要是路径不对,手动改完保存,再执行valet restart重启服务就行。

4. 检查hosts文件有没有冲突

Valet会自动管理/etc/hosts文件,但如果你之前手动加过blog.test的条目,就可能冲突:

  • 用sudo权限打开hosts文件:sudo nano /etc/hosts
  • 找找有没有127.0.0.1 blog.test这类手动加的行,有的话删掉,保存退出后再重启Valet。

额外提一句:别搞混valet link和valet park

如果你之前用valet park把~/Sites这类目录设成了自动站点目录,Valet会把目录下的每个子文件夹都当成一个站点。这种情况下只要你的blog文件夹在park目录里,Valet也应该自动识别public目录。但要是同时用了link和park,可能会有优先级问题,建议选一种方式管理站点就行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:43:16