Laravel 10中config/app.php缺失providers数组问题求助
解决Laravel 10中config/app.php无providers数组及注册AuthServiceProvider的问题
一、当前项目的解决办法
Laravel 10及以上版本已将服务提供者的注册位置从config/app.php迁移到bootstrap/providers.php,这就是你找不到providers数组的原因。按以下步骤完成AuthServiceProvider及Passport相关服务的注册:
- 打开项目根目录下的
bootstrap/providers.php文件 - 将对应服务提供者添加到数组中:
<?php return [ App\Providers\AppServiceProvider::class, App\Providers\AuthServiceProvider::class, // 新增Auth服务提供者 App\Providers\EventServiceProvider::class, App\Providers\RouteServiceProvider::class, Laravel\Passport\PassportServiceProvider::class, // 新增Passport服务提供者(若需) ];
- 运行命令清除缓存,确保配置生效:
php artisan optimize:clear
注意:如果项目中不存在
App\Providers\AuthServiceProvider.php文件,可通过以下命令生成:php artisan make:provider AuthServiceProvider
二、确保后续新建Laravel项目默认包含AuthServiceProvider
要让新建项目自动包含Auth相关组件和服务提供者,可采用以下两种方式:
- 方式一:创建项目时启用Auth预设
创建新项目时添加--auth参数,Laravel会自动生成Auth相关的控制器、视图及服务提供者:
laravel new your-project-name --auth
- 方式二:自定义项目骨架
若需要个性化默认配置,可创建自己的项目模板仓库(上传已配置好Auth组件的项目),之后通过Composer从该仓库创建新项目:
composer create-project your-username/your-template-repo your-project-name
注:默认使用
laravel new创建的项目已自带AuthServiceProvider,仅当使用--no-auth参数时会跳过Auth组件生成。
内容的提问来源于stack exchange,提问作者sing tenang
相关产品推荐
相关产品推荐

