PHP Laravel 新星 returns 404

PHP Laravel Nova returns 404

我正在处理本地 laravel-nova 项目,该项目在过去几天运行良好。现在突然间,当我尝试去 /nova 路线时,我收到一个 404 错误提示 Page could not be found。我试过

php artisan config:cache

但运气不好。我什至删除了 vendor-文件夹和 运行 composer installphp artisan nova:install 但这也没有解决它。

当我 运行 php artisan route:list 我得到错误:

Class App\Http\Controllers\Laravel\Nova\Http\Controllers\LoginController does not exist

我的意思是,说真的 - WTF???我完全不知道发生了什么事?

有人知道怎么解决吗?

我的 Laravel 版本是 5.7,我 运行 在 Windows 10 机器上运行这个应用程序。

LoginController 这个文件添加use App\Http\Controllers\Controller;

我自己发现的,所以为了防止其他用户遇到同样的问题,我会post一个答案。

因此,如果您有一条路线,例如:

Route::get('{subpage}', 'SubpagesController@show');

这将 return 404 并且您将无法访问 Nova,例如自 Nova(从版本 1.0.9 起)以来的仪表板始终在应用程序的路由

之后注册其路由

您必须通过删除 /

config/nova.php 路径更改为 no/va 或简单地 nova

查看here了解更多

加上 app/config/app.php

App\Providers\NovaServiceProvider::class,

里面'providers'

如果这不起作用,您可能需要稍后 运行 这些命令

php artisan nova:publish

php artisan view:clear

确认 App\Providers\NovaServiceProvider 已添加到 app\config.php 配置文件中的 providers 数组。如果不是,您应该手动添加它。当然,如果您的应用程序不使用 App 命名空间,您应该根据需要更新提供者 class 名称。

您可能想在终端中尝试以下命令:

composer dump-autoload
php artisan clear-compiled
php artisan route:clear
php artisan config:cache

这对我有用,在您的虚拟主机中添加以下代码:

<Directory /var/www/html/checkin>
    AllowOverride All
</Directory>

我正在使用 laragon , 在我的例子中,在 config/app.php 添加

App\Providers\NovaServiceProvider::class,

然后试了

php artisan nova:publish

但还是404错误,接着

composer dump-autoload
php artisan clear-compiled
php artisan route:clear
php artisan config:cache

成功了!对我来说很好。