Просто перенесли мое приложение Laravel из локальной среды в среду онлайн-разработки на удаленном сервере.После этой миграции я получаю сообщение об ошибке:
ReflectionException thrown with message "Class App\Http\MiddleWare\NotUser does not exist"
Я удалил папку vendor
, а также composer.lock
и запустил composer update
.Также очищен bootstrap/cache
, а также попытался запустить php artisan config:clear
.
Вычистил все cache/*
файлы из хранилища.Всякий раз, когда я пытаюсь войти в систему, я получаю сообщение об ошибке, что промежуточное ПО не существует.
app / Http / Middleware / NotUser.php
<?php
namespace App\Http\Middleware;
use Closure;
class NotUser
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
# This middleware prevents anyone who is not an admin from accessing given route or controller
# apply by using it in the constructor, $this->middleware('is.admin');
if ($request->user()->role->name === 'user') {
return back()->with('error', __('Access denied'));
}
return $next($request);
}
}
app / Http / Kernel.php
protected $routeMiddleware = [
...
'not.user' => \App\Http\MiddleWare\NotUser::class
];
routs / web.php
Route::group(['prefix' => 'admin', 'middleware' => ['not.user', 'auth']], function () { ... }
Это прекрасно работает в локальной среде.У меня не было проблем.После того, как я переключился на среду разработки, я начал получать эту ошибку, и я понятия не имею, что вызывает это.