AccessIpMiddleware.php 835B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. namespace App\Http\Middleware;
  3. use Closure;
  4. use Illuminate\Http\Request;
  5. use Symfony\Component\HttpFoundation\Response;
  6. class AccessIpMiddleware
  7. {
  8. /**
  9. * Handle an incoming request.
  10. *
  11. * @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
  12. */
  13. public function handle(Request $request, Closure $next): Response
  14. {
  15. \Log::info($request->ip());
  16. $accessIps = config("ipWhiteList.access");
  17. if($accessIps != "*") {
  18. $accessIps = explode("|", $accessIps);
  19. if (!in_array($request->ip(), $accessIps)) {
  20. return response()->json([
  21. 'message' => "You don't have permission to access this website."
  22. ], 401);
  23. }
  24. }
  25. return $next($request);
  26. }
  27. }