创建Laravel新项目时缺失Middleware文件夹,求解决方案
Laravel项目无Middleware文件夹的解决办法
- 先查看Laravel版本:执行
php artisan --version获取具体版本号。 - Laravel 11及以上版本:框架做了结构精简,默认没有独立的
app/Http/Middleware文件夹,自带的Middleware类直接放在app/Http目录下。如果需要自定义Middleware,直接用Artisan命令生成即可,命令会自动创建对应的文件夹:
执行后会自动生成php artisan make:middleware YourCustomMiddlewareapp/Http/Middleware/YourCustomMiddleware.php文件,同时创建缺失的Middleware文件夹。 - Laravel 10及以下版本:默认应该存在
app/Http/Middleware文件夹。如果没有,要么手动创建该文件夹,要么直接运行上面的make:middleware命令,命令会自动帮你建好文件夹和对应文件。若需要框架默认的Middleware类,可以从同版本的全新Laravel项目中复制(比如Authenticate.php、EncryptCookies.php等)。 - 最后可确认
composer.json里的autoload配置,确保app/Http/Middleware在自动加载范围内,不过一般通过Artisan命令生成的文件会自动处理这个配置,无需手动修改。
内容的提问来源于stack exchange,提问作者Itech Web Consultant Ltd
相关产品推荐
相关产品推荐

