apache에서의 환경변수 출력결과
=================================================================
SERVER_PORT=80
GATEWAY_INTERFACE=CGI/1.1
PWD=경로
HTTP_USER_AGENT=Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322)
HTTP_REFERER=경로
REMOTE_PORT=4318
HTTP_HOST=아이피주소
SCRIPT_FILENAME=해당스크립트 주소
HTTP_CONNECTION=Keep-Alive
HTTP_ACCEPT_ENCODING=gzip, deflate
HOSTNAME=www
SERVER_SIGNATURE=
HTTP_CACHE_CONTROL=no-cache
SERVER_ADMIN=웹서버 관리자이메일주소
REQUEST_METHOD=POST
SERVER_ADDR=192.168.104.50
MACHTYPE=ia64-redhat-linux-gnu
SCRIPT_NAME=해당스크립트경로
REMOTE_ADDR=아이피주소
SERVER_SOFTWARE=Apache
CONTENT_LENGTH=31792
QUERY_STRING=
SERVER_NAME=아아피주소
이어지는 내용
SHLVL=1
HTTP_UA_CPU=x86
SERVER_PROTOCOL=HTTP/1.1
HTTP_ACCEPT=image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
REQUEST_URI=/cgi-bin/Rweb/tfbs_rweb.cgi
HTTP_ACCEPT_LANGUAGE=ko
DOCUMENT_ROOT=/somedir
SHELL=/sbin/nologin
HOSTTYPE=ia64
OSTYPE=linux-gnu
HOME=/stuff/home/sapuser
TERM=dumb
PATH=./:/sbin/:/opt/openpbs/sbin/:/opt/openpbs/bin:/usr/sbin/:/usr/bin/:/usr/local/java/bin/:/usr/local/biotool/blast/parallelblast/bin/:/usr/local/biotool/blast/parallelblast/bin/:/usr/local/biotool/blast/parallelblast/bin/:/usr/kerberos/sbin:/usr/local/biotool/blast/parallelblast/bin/:/usr/kerberos/bin:/bin:/usr/bin:/usr/local/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/pbs/bin:/usr/pbs/sbin:/database:/usr/local/mpich/bin:/usr/local/java/bin/:/usr/local/biotool/xenie/:/usr/local/mpich/bin:/usr/local/biotool/blast/parallelblast/bin:/usr/local/biotool/xenie/:/usr/local/biotool/xenie/:/usr/local/biotool/xenie/:/usr/local/biotool/xenie/:/usr/local/mpich/bin:/usr/local/biotool/blast/parallelblast/bin:/usr/local/biotool/xenie/
CONTENT_TYPE=application/x-www-form-urlencoded
_=/usr/bin/env
위의 HOME 환경변수는 R에서 사용하기 위해서 직접 사용자가 넣어준 환경변수이다.
이렇듯 apache의 환경변수를 사용자가 직접 넣어주기 위해서는 apache module을 이용하는 방법이 있다.
1. 현재 apache에 설치된 모듈의 목록을 확인한다.
# ./httpd -l
Compiled in modules:
core.c
mod_access.c
mod_auth.c
mod_include.c
mod_log_config.c
mod_env.c
mod_setenvif.c
prefork.c
http_core.c
mod_mime.c
mod_status.c
mod_autoindex.c
mod_asis.c
mod_cgi.c
mod_negotiation.c
mod_dir.c
mod_imap.c
mod_actions.c
mod_userdir.c
mod_alias.c
mod_so.c
mod_env 모듈이 설치되어 있으므로 다음 단계로 넘어간다.
2. httpd.conf 파일에 다음을 추가한다.
SetEnv HOME /somedir
R이라는 프로그램이 apache에서 cgi로 실행할때 HOME이라는 변수를 사용하기 때문에 설정해 두었다.
Posted by hongiiv