Kernel.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <?php
  2. namespace App\Http;
  3. use App\Http\Middleware\Affiliate;
  4. use App\Http\Middleware\Authenticate;
  5. use App\Http\Middleware\CheckForMaintenanceMode;
  6. use App\Http\Middleware\EncryptCookies;
  7. use App\Http\Middleware\isForbidden;
  8. use App\Http\Middleware\isLogin;
  9. use App\Http\Middleware\isMaintenance;
  10. use App\Http\Middleware\isSecurity;
  11. use App\Http\Middleware\Permission;
  12. use App\Http\Middleware\RedirectIfAuthenticated;
  13. use App\Http\Middleware\SetLocale;
  14. use App\Http\Middleware\TrimStrings;
  15. use App\Http\Middleware\TrustProxies;
  16. use App\Http\Middleware\VerifyCsrfToken;
  17. use App\Http\Middleware\WebApi;
  18. use Fruitcake\Cors\HandleCors;
  19. use Illuminate\Auth\Middleware\AuthenticateWithBasicAuth;
  20. use Illuminate\Auth\Middleware\Authorize;
  21. use Illuminate\Auth\Middleware\EnsureEmailIsVerified;
  22. use Illuminate\Auth\Middleware\RequirePassword;
  23. use Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse;
  24. use Illuminate\Foundation\Http\Kernel as HttpKernel;
  25. use Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull;
  26. use Illuminate\Foundation\Http\Middleware\ValidatePostSize;
  27. use Illuminate\Http\Middleware\SetCacheHeaders;
  28. use Illuminate\Routing\Middleware\SubstituteBindings;
  29. use Illuminate\Routing\Middleware\ThrottleRequests;
  30. use Illuminate\Routing\Middleware\ValidateSignature;
  31. use Illuminate\Session\Middleware\StartSession;
  32. use Illuminate\View\Middleware\ShareErrorsFromSession;
  33. class Kernel extends HttpKernel
  34. {
  35. /**
  36. * The application's global HTTP middleware stack.
  37. *
  38. * These middleware are run during every request to your application.
  39. *
  40. * @var array
  41. */
  42. protected $middleware = [
  43. // \App\Http\Middleware\TrustHosts::class,
  44. TrustProxies::class,
  45. HandleCors::class,
  46. CheckForMaintenanceMode::class,
  47. ValidatePostSize::class,
  48. TrimStrings::class,
  49. ConvertEmptyStringsToNull::class,
  50. ];
  51. /**
  52. * The application's route middleware groups.
  53. *
  54. * @var array
  55. */
  56. protected $middlewareGroups = [
  57. 'web' => [
  58. EncryptCookies::class,
  59. AddQueuedCookiesToResponse::class,
  60. StartSession::class,
  61. // \Illuminate\Session\Middleware\AuthenticateSession::class,
  62. SetLocale::class,
  63. ShareErrorsFromSession::class,
  64. VerifyCsrfToken::class,
  65. SubstituteBindings::class,
  66. ],
  67. 'user' => [
  68. isForbidden::class,
  69. isMaintenance::class,
  70. isLogin::class,
  71. ],
  72. 'admin' => [
  73. isForbidden::class,
  74. isLogin::class,
  75. Permission::class,
  76. ],
  77. 'api' => [
  78. 'throttle:60,1',
  79. SubstituteBindings::class,
  80. ],
  81. ];
  82. /**
  83. * The application's route middleware.
  84. *
  85. * These middleware may be assigned to groups or used individually.
  86. *
  87. * @var array
  88. */
  89. protected $routeMiddleware = [
  90. 'auth' => Authenticate::class,
  91. 'auth.basic' => AuthenticateWithBasicAuth::class,
  92. 'auth.jwt' => \Tymon\JWTAuth\Http\Middleware\Authenticate::class,
  93. 'bindings' => SubstituteBindings::class,
  94. 'cache.headers' => SetCacheHeaders::class,
  95. 'can' => Authorize::class,
  96. 'guest' => RedirectIfAuthenticated::class,
  97. 'password.confirm' => RequirePassword::class,
  98. 'signed' => ValidateSignature::class,
  99. 'throttle' => ThrottleRequests::class,
  100. 'verified' => EnsureEmailIsVerified::class,
  101. 'webApi' => WebApi::class,
  102. 'isMaintenance' => isMaintenance::class,
  103. 'isSecurity' => isSecurity::class,
  104. 'isForbidden' => isForbidden::class,
  105. 'affiliate' => Affiliate::class,
  106. ];
  107. }