>  기사  >  백엔드 개발  >  Laravel 5에서 클라이언트의 IP 주소를 어떻게 얻나요?

Laravel 5에서 클라이언트의 IP 주소를 어떻게 얻나요?

Linda Hamilton
Linda Hamilton원래의
2024-10-20 08:33:31693검색

How Do I Get a Client's IP Address in Laravel 5 ?

Laravel 5에서 클라이언트 IP 주소를 얻는 방법

Laravel에서 클라이언트의 IP 주소를 검색하는 것은 쉬운 작업이 될 수 있습니다. 핵심 PHP에서는 $_SERVER["REMOTE_ADDR"]을 통해 IP 주소에 액세스합니다. 그러나 Laravel에서는 방문자의 IP 주소를 정확하게 캡처하지 못할 수 있습니다.

Laravel의 접근 방식

Laravel은 클라이언트의 IP 주소를 얻기 위한 전용 방법을 제공합니다.

<code class="php">Request::ip();</code>

이 메소드는 내부적으로 Symfony 요청 객체의 getClientIps 함수를 활용하여 IP 주소 검색 프로세스를 처리합니다.

getClientIps 작동 방법:

getClientIps 메소드는 다음을 따릅니다. 다단계 접근 방식:

  1. 신뢰할 수 있는 프록시 유효성 검사: 구성된 신뢰할 수 있는 IP 범위를 기반으로 요청이 신뢰할 수 있는 프록시에서 오는지 확인합니다.
  2. 헤더 구문 분석:trustedHeaders 구성에 지정된 신뢰할 수 있는 헤더를 기반으로 Forwarded 또는 Client-IP 헤더에서 IP 주소를 추출합니다.
  3. IP 체인 생성:을 형성합니다. 요청의 원래 IP, 추출된 헤더 및 신뢰할 수 있는 프록시를 포함한 IP 주소 체인.
  4. 신뢰할 수 없는 프록시 제거: 신뢰할 수 있는 프록시로 식별된 모든 IP 주소는 체인에서 제거됩니다.
  5. 클라이언트 IP 검색: 신뢰할 수 없는 프록시 필터링 체인의 첫 번째 IP 주소가 클라이언트의 IP 주소로 식별됩니다.
  6. 포트 제거: 일관성을 위해 클라이언트 IP 주소에서 모든 포트 정보를 제거합니다.

위 내용은 Laravel 5에서 클라이언트의 IP 주소를 어떻게 얻나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.