只有 Laravel 9+(PHP ≥ 8.0)才能使用官方维护的 @laravel/breeze;Laravel 8 用户需用已停止维护的旧版,不建议新项目使用。
只有 Laravel 9 或更高版本(且 PHP ≥ 8.0)才能用官方维护的 @laravel/breeze。Laravel 8 用户需用旧版 laravel/breeze(v1.x),但已停止维护,不建议新项目使用。运行 php -v 和 php artisan --version 确认环境,否则执行 composer require laravel/breeze --dev 会报依赖冲突或静默失败。
在项目根目录运行:
php artisan breeze:install它会提示你选择前端框架,默认是 Blade,也可选
react 或 vue。选错不影响后续修改,但会决定生成的路由、组件和资源路径。例如选 react 后,resources/js/Pages/Auth/ 下会出现 JSX 文件,而 Blade 模式只生成 resources/views/auth/ 下的 Blade 模板。注意:选了 React/Vue 就必须额外跑 npm install && npm run dev,否则页面空白——这不是 breeze 问题,而是 Vite 或 Mix 没编译资产。
users 表结构是否兼容breeze 自带的 CreateUsersTable 迁移文件默认包含 email_verified_at、remember_token 字段,并设 email 为唯一索引。如果你已有 users 表且字段不全,直接 php artisan migrate 会报错。此时应:
users 表(开发环境可接受)php artisan breeze:install --force 跳过检查(不推荐)RegisterController 或 R
egistrationRequest 中加逻辑,并配置 MAIL_MAILER 环境变量。
RedirectIfAuthenticated 中间件控制安装后,未登录用户访问 /dashboard 会被重定向到 /login;登录成功后默认跳回 /dashboard。这个行为由 app/Http/Middleware/RedirectIfAuthenticated.php 的 handle() 方法决定,其中 return redirect(RouteServiceProvider::HOME); 是关键。如果想改成跳首页或用户个人页,只需修改 RouteServiceProvider::HOME 的值(比如改为 '/' 或 '/profile'),不要动中间件本身。还有一点容易忽略:Blade 模式下,resources/views/layouts/app.blade.php 里有硬编码的导航链接,比如 href="{{ route('dashboard') }}",如果改了路由名,这里也得同步更新,否则菜单点击 404。