PHP Laravel Nova возвращает 404

Я работаю над местным laravel-nova проектом, который отлично работал последние пару дней. Теперь внезапно, когда я пытаюсь перейти на маршрут /nova, я получаю сообщение об ошибке 404, говорящее Page could not be found. я пробовал с

php artisan config:cache

но без везения. Я даже удалил vendor-папку и запустил composer install и php 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 машине.

Вы пробовали и php artisan view:clear ?

Andrei Lupuleasa 15.04.2019 12:54

Или php artisan cache:clear очистить весь кеш

Andrei Lupuleasa 15.04.2019 12:54

@AndreiLupuleasa Они оба не решили эту проблему :-(

ST80 15.04.2019 12:57

Как насчет ремесленной конфигурации: очистить

cherrysoft 15.04.2019 13:01

@cherrysoft Пробовал - не сработало: с

ST80 15.04.2019 13:04

Хорошо, почему минусы?

ST80 15.04.2019 13:20

Вы зарегистрировали NovaServiceProvider?

webmasterdro 15.04.2019 13:40

@webmasterdro Да, он был внутри config/app.php после установки.

ST80 15.04.2019 13:57
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
8
3 712
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

LoginController Добавить этот файл use App\Http\Controllers\Controller;

В каком? App\Http\Controllers\LoginController или vendor\laravel\nova\src\Http\Controllers\LoginController?

ST80 15.04.2019 13:10

Отправить список каталогов vendor\laravel\nova\src\Http\Controllers\

Ganesh Khartode 15.04.2019 13:36

Я обнаружил это сам, поэтому на случай, если у других пользователей может возникнуть такая же проблема, я опубликую ответ.

Итак, если у вас может быть маршрут, например:

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

Это вернет 404, и вы не сможете получить доступ к Nova, например. панель инструментов, начиная с Nova (начиная с версии 1.0.9), всегда регистрирует свои маршруты после маршрутов приложения

Вам нужно будет изменить путь config/nova.php либо на no/va, либо просто на nova, удалив /

Подробнее см. здесь

Ответ принят как подходящий

добавить на приложение/config/app.php

App\Providers\NovaServiceProvider::class,

внутри «провайдеров»

вам может понадобиться запустить эти команды позже, если это не сработает

php artisan nova:publish

а также

php artisan view:clear

Да, php artisan nova:publish на самом деле решил эту проблему! Забыл упомянуть :-) В любом случае спасибо - я приму ваш ответ!

ST80 26.03.2020 09:20

Убедитесь, что App\Providers\NovaServiceProvider был добавлен в массив providers в вашем файле конфигурации app\config.php. Если это не так, вы должны добавить его вручную. Конечно, если ваше приложение не использует пространство имен App, вам следует при необходимости обновить имя класса провайдера.

Возможно, вы захотите попробовать следующие команды в своем терминале:

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

Это работает для меня, добавьте следующий код в свой виртуальный хост:

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

Я использую ларагон, В моем случае в 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

работал! хорошо для меня.

Другие вопросы по теме