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

Laravel Valet:pugito项目返回404 Not Found,新项目可正常访问

问题描述

我在使用Laravel Valet时遇到了一个问题:现有Laravel项目"pugito",已经执行了valet park和valet link操作,但访问pugito.test时始终返回"404 - Not Found"错误。

具体情况
  • 已在macOS上成功用Valet运行其他项目
  • 创建"pugito"目录后,按相同步骤执行valet park和valet link,但访问域名时404
  • 新建测试目录"aheer"并放入简单index.php,执行相同Valet操作后,aheer.test可正常访问
已尝试的解决步骤
  • 确认"pugito"项目文件完整、Valet处于运行状态(valet start),其他项目正常服务
  • 删除重建"pugito"项目,重新执行valet park/valet link,对比/usr/local/etc/nginx/sites下"pugito"和"aheer"的Nginx配置文件,未发现差异
  • 用valet use切换PHP版本(7.3、7.4、8.2),问题依旧
环境信息
  • macOS Monterey 12.6.1
  • Laravel Valet 4.3.0
求助需求
  1. 为何"pugito"项目返回404,而其他同步骤项目正常?
  2. 具体的故障排查步骤有哪些?
  3. 如何让Valet正确识别并服务"pugito"项目?

排查与解决建议

一、确认项目入口文件路径

Valet默认指向Laravel项目根目录下的public文件夹,如果你的"pugito"项目public目录缺失、路径错误,或者index.php损坏,就会触发404:

  • 检查pugito目录下是否存在public文件夹,且内部有完整的index.php文件
  • 如果项目结构特殊(入口文件在根目录),可以在项目根目录创建ValetDriver.php自定义入口规则:
<?php

class ValetDriver extends LaravelValetDriver
{
    public function serves($sitePath, $siteName, $uri)
    {
        return true;
    }

    public function isStaticFile($sitePath, $siteName, $uri)
    {
        if (file_exists($staticFilePath = $sitePath.$uri)) {
            return $staticFilePath;
        }

        return false;
    }

    public function frontControllerPath($sitePath, $siteName, $uri)
    {
        return $sitePath.'/index.php';
    }
}

二、清理Valet缓存与DNS记录

  • 执行valet forget移除"pugito"的park记录,再重新执行valet park
  • 清除本地DNS缓存:sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
  • 检查/etc/hosts文件,确认没有pugito.test的错误解析条目

三、验证Nginx配置与日志

  • 手动检查/usr/local/etc/nginx/sites/pugito.test配置文件中的root字段,确认路径指向pugito/public目录
  • 查看Nginx错误日志定位问题:tail -f /usr/local/var/log/nginx/error.log,访问pugito.test时观察日志中的具体报错(比如路径不存在、权限不足)

四、修复项目目录权限

macOS下目录权限异常可能导致Valet无法读取文件:

  • 给项目目录设置基础权限:chmod -R 755 pugito
  • 统一目录所属用户:chown -R $(whoami):staff pugito

五、重置Valet环境

如果以上步骤无效,可重置Valet彻底修复:

  1. 执行valet stop停止服务
  2. 执行valet uninstall卸载Valet
  3. 重新执行valet install安装配置
  4. 重新valet park你的项目目录

内容的提问来源于stack exchange,提问作者Hassan Shahzad Aheer

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 15:32:11