Если вы хотите, чтобы промежуточное ПО запускалось во время каждого HTTP-запроса к вашему приложению, просто укажите класс промежуточного ПО в свойстве $middleware
вашего класса app/Http/Kernel.php
.
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
\App\Http\Middleware\TrustProxies::class,
YOUR MIDDLEWARE::class,
];
Если у вас нет доступа или вы не хотите изменять контроллеры пакетов, вы можете создать промежуточное ПО (рекомендуется наследовать от AuthenticateSession
. Например:
<?php
namespace App\Http\Middleware;
use Illuminate\Session\Middleware\AuthenticateSession;
use Auth;
use Closure;
class AuthenticateIfEnvironment extends AuthenticateSession
{
public function handle($request, Closure $next)
{
if (env('APP_ENV') == 'XXXXXXXX' && !Auth::user() && !$request->is('login')) {
return redirect('/login');
}
return parent::handle($request, $next);
}
}
Тогда Kernal.php
выглядит так:
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
\App\Http\Middleware\TrustProxies::class,
\App\Http\Middleware\AuthenticateIfEnvironment::class,
];
person
Zenobia Panvelwalla
schedule
12.09.2017