PHP $_SERVER 함수 설명 및 사용 요령

기술정보 23.10.26

$_SERVER 란?

PHP기반에서 $_SERVER는 기본적용된 슈퍼글로벌 변수(super global variable)라고 할 수 있습니다. 

웹사이트에서 서버와 관련된 정보 및 기타 설정 내용을 가지고있는 있는 연관 배열(associative array)입니다. 

$_SERVER는 PHP에서 웹 서버 환경과 관련된 다양한 정보에 쉽게 접근 및 사용할 수 있도록 만들어 졌습니다. 


대표적인 $_SERVER 배열은 내용은 다음과 같습니다:


1. $_SERVER['PHP_SELF']: 현재 스크립트의 파일 경로와 파일 이름을 포함합니다.

ex) /page/view.php 도메인을 제외한 나머지 경로 및 파일 명


2. $_SERVER['HTTP_USER_AGENT']: 클라이언트의 브라우저 정보를 포함합니다.

ex) Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 Edg/118.0.2088.61


3. $_SERVER['REMOTE_ADDR']: 클라이언트의 IP 주소를 포함합니다.

ex) 471.128.42.14 등 사용 예는 방문자 정보 저장 중복 체크 및 로그인 세션에 아이피 기반으로 저장 등등 입니다. 


4. $_SERVER['SERVER_NAME']: 현재 실행 중인 서버의 호스트 이름을 나타냅니다.

ex) aaa.com 도메인 이름. 사용 예시는 여러 도메인 사용 시 혹은 멀티 도메인 사용할 때 접근한 URL 구분 용으로 좋습니다.


5. $_SERVER['REQUEST_METHOD']: 현재 HTTP 요청의 메소드(GET, POST, 등)를 나타냅니다.

ex) 단순 메소드 구분 용도


6. $_SERVER['HTTP_REFERER']: 이전 페이지의 URL을 나타냅니다.

ex) 페이지 이동 혹은 최초 방식이 유입(이전페이지) 주소 정보, 단, 메타 태그로 차단 해두면 수집 불가


7. $_SERVER['HTTP_HOST']: 현재 요청의 호스트 정보를 포함합니다.

ex) aaa.com 도메인 이름. 사용 예시는 여러 도메인 사용 시 혹은 멀티 도메인 사용할 때 접근한 URL 구분 용으로 좋습니다.


8. $_SERVER['DOCUMENT_ROOT']: 현재 사이트가 위치한 서버상의 위치 

ex) /home/hosting_user/username/www/ 서버의 절대 경로


9. $_SERVER['SERVER_PORT']: 설정에서 사용하는 포트 정보 숫자로 표시합니다.


이밖에도 많은 $_SERVER 배열 정보가 있으며, 보편적으로 위 9가지를 주로 사용합니다. 





목록으로
© 디자인키트