PHP/기초

PHP $_SERVER 환경 변수 정리

99C0RN 2022. 6. 15. 18:14

개요

$_SERVER 환경 변수 내용 정리

 

내용


$_SERVER 환경 변수(매뉴얼)

$_SERVER는 헤더, 경로 및 스크립트 위치와 같은 정보를 포함하는 배열입니다.
이 배열의 항목은 웹 서버에서 만듭니다. 모든 웹 서버가 이러한 항목을 제공한다는 보장은 없습니다.
서버는 일부 항목을 생략하거나 여기에 나열되지 않은 다른 항목을 제공할 수 있습니다.


$_SERVER 환경 변수 사용법 및 설명

<?php
$_SERVER['DOCUMENT_ROOT']		// value: /home/www/local~~~
$_SERVER['REMOTE_ADDR']		// value: 192.168.0.111
$_SERVER['SERVER_ADDR']		// value: 192.168.0.999
$_SERVER['HTTP_REFERER']		// value: https://hahahoho5915.tistory.com/hi.php?name=kk
$_SERVER['SERVER_NAME']		// value: hahahoho5915.tistory.com
$_SERVER['HTTP_HOST']		// value: hahahoho5915.tistory.com
$_SERVER['SERVER_PORT']		// value: 443
$_SERVER['REQUEST_URI']		// value: /hi?name=kk
$_SERVER['PHP_SELF']		// value: /hi.php
$_SERVER['QUERY_STRING']		// value: name=kk

$_SERVER['DOCUMENT_ROOT']

- 서버의 구성 파일에 정의 된대로 현재 스크립트가 실행중인 문서 루트 디렉토리입니다.

  > 물리적인 주소 : /home/www/local~~~

 

$_SERVER['REMOTE_ADDR']

- 사용자가 현재 페이지를보고있는 IP 주소입니다.

  > 접속한 IP : 192.168.0.111

 

$_SERVER['SERVER_ADDR']

- 현재 스크립트가 실행중인 서버의 IP 주소입니다.

  > 서버 IP : 192.168.0.999

 

$_SERVER['HTTP_REFERER']

- 사용자 에이전트를 현재 페이지로 참조한 페이지의 주소입니다 (있는 경우). 

- 이것은 사용자 에이전트에 의해 설정됩니다. 모든 사용자 에이전트가 이를 설정하지는 않으며 일부는 HTTP_REFERER 를 기능으로 수정하는 기능을 제공합니다 .

- 간단히 말해 실제로 신뢰할 수는 없습니다.

  > 이전 주소 : https://hahahoho5915.tistory.com/hi.php?name=kk

 

$_SERVER['SERVER_NAME']

- 현재 스크립트가 실행중인 서버 호스트의 이름입니다. 

- 스크립트가 가상 호스트에서 실행중인 경우 해당 가상 호스트에 대해 정의 된 값이됩니다.

  > 서버 호스트 이름 : hahahoho5915.tistory.com

 

$_SERVER['HTTP_HOST']

- 현재 요청 의 Host : 헤더 내용 (있는 경우)

  > 현재 요청에 대한 Host 헤더의 내용 : hahahoho5915.tistory.com

 

$_SERVER['SERVER_PORT']

- 웹 서버가 통신을 위해 사용중인 서버 시스템의 포트입니다. 

  > 사이트 포트 번호 : 443

 

$_SERVER['REQUEST_URI']

이 페이지에 액세스하기 위해 제공된 URI입니다.

  > URI : /hi.php?name=kk

 

$_SERVER['PHP_SELF']

- 문서 루트를 기준으로 현재 실행중인 스크립트의 파일 이름입니다.

  > 현재페이지의 주소에서 도메인과 넘겨지는 값 제외 : /hi.php

 

$_SERVER['QUERY_STRING']

- 페이지에 액세스 한 쿼리 문자열입니다 (있는 경우)

  > GET 방식의 파일명 뒤에 붙어서 넘어오는 파라미터 값 : name=kk