PHP & Others

phpinfo 정보 - 미리 정의된 변수 (Predefined variables) 번역

컨텐츠 정보

본문

미리 정의된 변수 (Predefined variables)
PHP는 모든 스크립트에 대해 그 스크립트가 실행 될 때 여러개의 미리 정의된 변수를 제공한다. 이 변수중 서버의 종류나 버전, 기타 다른 요인으로 인해 달라지는 것도 많은데, 그런 변수는 이곳에 문서화 되지 않았다. 또한 이 변수중 다수는 PHP가 command-line으로 동작할 때는 사용할 수 없다.

이런 여러 요인이 있지만 이곳에서는 가장 일반적인 환경인 Apache 1.3.6 에서 모듈로 PHP3를 설치한 환경에서의 미리 정의된 변수를 살펴보도록 하자.

여러분이 사용하는 시스템의 모든 미리 정의된 변수를 보려면 phpinfo() 함수를 사용하자. (이 함수는 다른 여러 유용한 정보도 알려준다.)

참고: 여기나온 목록은 완전하지 않다. (완벽할 생각도 없다.) 이 목록은 단순히 여러분의 스크립트에서 어떤 종류의 미리 정의된 변수가 사용될 수 있는가의 예시일 뿐이다.

Apache variables
이 변수는 Apache 웹서버로부터 생성된 것이다. 만약 여러분이 다른 웹서버를 사용하고 있다면 이와 동일한 변수가 생성된다고 보장할 수 없다. 아마도 일부는 없어지고, 여기에 없는 변수가 새로 생길 것이다. 여기에 있는 변수중 대부분은 CGI 1.1 specification에서 나온 것이고, 그 내용대로 사용된다.

이곳에 있는 변수중 PHP가 command line으로 동작할 경우 사용될 수 있는 것은 거의 없다.



GATEWAY_INTERFACE
서버가 사용하고 있는 CGI specification의 revision. 예: 'CGI/1.1'.

SERVER_NAME
현재 스크립트가 실행되고 있는 호스트의 이름. 만약 스크립트가 가상 호스트에서 실행되고 있다면, 이 값은 가상 호스트의 값이 될 것이다.

SERVER_SOFTWARE
요구에 대한 대답의 헤더에 사용할 서버 identification 문자열

SERVER_PROTOCOL
페이지가 요구되어질 때 사용한 프로토콜의 이름과 리비젼. 예: 'HTTP/1.0';

REQUEST_METHOD
페이지가 요구될 때 사용된 method: 예: 'GET', 'HEAD', 'POST', 'PUT'.

QUERY_STRING
해당 페이지를 접근할 때 사용된 query string.

DOCUMENT_ROOT
현재 스크립트가 샐행중인 document root 디렉토리. 서버의 설정 파일에 정의되어 있다.

HTTP_ACCEPT
현재의 요구(request)에 포함된 Accept: 헤더의 내용 (존재하는 경우만)

HTTP_ACCEPT_CHARSET
현재의 요구(request)에 포함된 Accept-Charset: 헤더의 내용 (존재하는 경우만). 예: 'iso-8859-1,*,utf-8'.

HTTP_ENCODING
현재의 요구(request)에 포함된 Accept-Encoding: 헤더의 내용 (존재하는 경우만). 예: 'gzip'.

HTTP_ACCEPT_LANGUAGE
현재의 요구(request)에 포함된 Accept-Language: 헤더의 내용 (존재하는 경우만). 예: 'en'.

HTTP_CONNECTION
현재의 요구(request)에 포함된 Connection: 헤더의 내용 (존재하는 경우만). 예: 'Keep-Alive'.

HTTP_HOST
현재의 요구(request)에 포함된 Host: 헤더의 내용 (존재하는 경우만).

HTTP_REFERER
현재 페이지를 찾아온 페이지. 현재페이지로 넘어오는 링크가 있고, 이 링크를 클릭하여 현재 페이지로 넘어온 경우 이전 페이지의 주소가 설정된다. 이 값은 사용자의 브라우저에 따라 설정될 수도 있고 아닐 수도 있다.

HTTP_USER_AGENT
현재의 요구(request)에 포함된 User_Agent: 헤더의 내용 (존재하는 경우만). 현재 페이지를 화면에 표시할 브라우저 소프트웨어의 상징이 되는 문자열이다. 예:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586) 특히, 이 값을 get_browser()함수와 함께 사용하면, 해당 페이지를 시용자의 브라우저의 능력에 맞춰서 만들어 낼 수도 있다.

REMOTE_ADDR
사용자가 현재 페이지를 보고 있는 시스템의 IP 주소

REMOTE_PORT
사용자의 시스템이 웹서버와 통신하고 있는 port 번호

SCRIPT_FILENAME
현재 실행되고 있는 스크립트의 절대 경로명

SERVER_ADMIN
웹서버 설정 파일에서 SERVER_ADMIN (Apache의 예) 지시자에 설정되어 있는 값. 만약 스크립트가 가상 호스트 상에서 실행되고 있다면 이 값은 virtual host 설정내에 설정된 값이 된다.

SERVER_PORT
웹서버가 사용하는 port 번호. 기본값으로 보통 '80'이 사용되지만, 예를들어 SSL을 사용하는 경우 여러분이 지정한 secure HTTP 포트의 값이 사용된다.

SERVER_SIGNATURE
server-generated 페이지에 추가되는 서버 버전과 가상 호스트 명. (enabled된 경우만)

PATH_TRANSLATED
모든 virtual을 real로의 전환을 마친 후, 현재 페이지의 파일시스템 기준의 경로. (document root 기준이 아니다.)

SCRIPT_NAME
현재 스크립트에 HTTP POST 메소드를 사용해 업로드된 파일에 대한 정보를 가진 associative 배열 $HTTP_POST_FILES 배열의 내용에 대한 자세한 정보는 POST method uploads 부분을 살펴보자.

$HTTP_POST_FILES 변수는 4.0.0 이후에서만 유효하다.

HTTP_ENV_VARS
현재 스크립트에 현재 환경 변수에서 전달된 변수의 associative 배열

HTTP_SERVER_VARS
현재 스크립트에 HTTP 서버에서 전달된 변수의 associative 배열 이 변수들은 위에서 언급한 Apache 변수들과 유사한 내용으로 되어있다

관련자료

댓글 0
등록된 댓글이 없습니다.
Today's proverb
비를 맞으며 걸어가는 사람에게 필요한 것은 비를 가려 줄 우산이 아니라 함께 걸어 줄 누군가이다. (이정하)