首页 > 解决方案 > 调用不存在的路由时,Laravel 6 不返回 404

问题描述

我对 Laravel 有一些问题。我打电话php artisan route:cache,然后问题开始了。例如,即使用户已登录,也可以调用 Auth 路由(登录等)。然后缓存命令似乎没有清除路由。我注意到它是因为我将我的 Auth 路由放在中间件中,guests因为 Auth 路由的呈现。我运行后route: clear它工作了。

此外,从那以后 404 路由就不起作用了,因为如果我调用一个不存在的路由,那么 Symfony 框架会抛出一个错误:

Symfony\Component\Routing\Exception\ResourceNotFoundException

那是我的 web.php:

Route::get("/installer","install\InstallController@index");

Route::group(["middleware"=>"guest"],function(){
    Auth::routes();
    Route::post("login","Auth\Logincontroller@authenticate");
});

Route::group(["middleware" => "auth"], function () {
    Route::get("/logout","Auth\LoginController@logOut");
    Route::get('/', "dashboard\DashboardController@index");
});

此外,该installer路线不起作用。我总是会被重定向到localhost/dashboard(即使我更改了路线名称)。我的 Laravel 域被称为raptor.debug,所以我不知道为什么它会重定向到localhost.

有人可以指出我做错了什么还是这是一个错误?

标签: phplaravel

解决方案


正如Anas Bakro 指出的那样,当控制器文件夹小写php artisan route:cache时,该命令将使应用程序变砖。


推荐阅读