티스토리 뷰
1.아파치의 환경변수란?
아파치 웹서버는 환경변수(environment variable)라는 변수에 정보를 저장할 수 있다. 이 정보를 사용하여 로그나 접근제어 등 여러 작업을 조절한다. 또, 환경변수는 CGI 스크립트와 같은 외부 프로그램과 통신하는 수단이 된다.
이 변수들을 환경변수라고 부르지만, 운영체제에서 말하는 환경변수와 다르다. 이 변수는 아파치 내부에 저장되고 사용된다. 환경변수는 CGI 스크립트나 Server Side Include 스크립트로 넘겨질때만 실제 운영체제 환경변수가 된다. 서버를 실행하는 운영체제 환경을 수정하고 싶다면 운영체제 쉘에서 환경을 수정해야 한다.
2.지시자
--아파치 모듈 : mod_env
1)SetEnv 변수 변수값 : CGI 스크립트나 SSL 페이지에 전달할 환경변수를 설정한다.
2)UnsetEnv 변수 변수 ... : 해당 환경 변수들을 삭제함
3)PassEnv : 아파치 시작시 정해져 있는 환경변수를 CGI 스크립트나 SSL 페이지로 전달한다( 스크립트에서 운영체제에 대해 알고 싶을 때 사용)
--아파치 모듈 : mod_setenvif
4)SetEnvIf 속성 정규표현식 변수 [변수값] : 속성 조건에 해당하는 요청에 대해서만 환경변수를 설정하는 지시자. 속성은 클라이언트 요청 헤더에서 Host, User-Agent, Referer, Request_URI, Remote_Host, Remote_Addr, Remote_User... 등 중 1개가 될 수 있다.
5)SetEnvIfNoCase : SetEnvIf와 같은데 정규표현식을 대,소문자 구분하지 않는 차이가 있다.
6)BrowserMatch 정규표현식 변수1[변수1값] 변수2[변수2값] ... : 요청 헤더 중 User-Agent에 따라 환경변수를 설정하는 지시자
7)BrowserMatchNoCase 정규표현식 변수1[변수1값] 변수2[변수2값] ... : BrowserMatch 지시자와 같은데 정규표현식의 대소문자 구별을 안한다.
※BrowserMatch는 SetEnvIf User-Agent와 같은데 구버전과의 호환성을 위해 존재한다.
참고 : http://httpd.apache.org/docs/2.0/ko/env.html
'책 > 아파치 핵심 가이드' 카테고리의 다른 글
[11일차] suEXEC를 통한 보안 강화 (0) | 2015.11.12 |
---|---|
[8일차] .htaccess & Expirations(기한만료) (0) | 2015.11.11 |
[7일차] HTTP 응답 헤더 & Options 지시자 & 심볼릭 링크 (0) | 2015.11.11 |
[6일차] 아파치 Virtual Host에 대해 알아보자 (0) | 2015.11.10 |
[5일차] httpd.conf의 각종 지시자들 2차 (0) | 2015.11.10 |