상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - 웹서버 환경 변수 설정 방법은?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
웹서버에서 환경 변수를 설정하는 방법은 사용하는 웹서버 종류(Apache, Nginx, IIS 등)와 운영체제(리눅스, 윈도우)에 따라 다를 수 있습니다. 하지만 일반적인 방법과 각 웹서버별 대표적인 설정 방식을 중심으로 자세히 설명드리겠습니다. --- 1. 환경 변수란? 환경 변수(Environment Variable)는 운영체제나 프로그램 실행 환경에 영향을 주는 변수로, 시스템 내부적으로 경로나 설정값, <a href='https://sangseek.com/sangseeks/인증정보/ko'>인증정보</a> 등을 관리하는 데 사용됩니다. 웹서버에서 환경 변수 설정은 주로 웹 애플리케이션에 필요한 설정값을 전달하거나 서버 동작 시 특정 값을 참조할 때 중요합니다. --- 2. 운영체제 차원의 환경 변수 설정 웹서버 실행 계정에 환경 변수를 설정하면, 해당 서버 프로세스와 그 자식 프로세스가 이 변수를 상속받아 사용할 수 있습니다. - 리눅스, 유닉스 계열 - 웹서버 실행 전 쉘 프로파일(예: ~/.<a href='https://sangseek.com/sangseeks/bashrc/ko'>bashrc</a>, /etc/profile)이나 시스템 서비스 단위 파일(systemd 서비스 파일) 내에 `export` 명령어로 환경 변수를 정의합니다. - 예: `export MY_ENV_VAR='my_value'` - systemd 환경일 경우 서비스 단위 파일 내 `[Service]` 섹션에 `Environment="MY_ENV_VAR=my_value"` 처럼 설정할 수도 있습니다. - 변경 후 웹서버를 재시작해야 변수 설정이 반영됩니다. - 윈도우 - 시스템 속성 > 고급 시스템 설정 > 환경 변수 메뉴에서 사용자 또는 시스템 변수로 추가합니다. - 또는 명령 프롬프트에서 `setx MY_ENV_VAR "my_value"` 명령어를 사용하여 환경 변수를 등록할 수 있습니다. - IIS 같은 웹서버는 재시작이 필요합니다. --- 3. Apache 웹서버에서 환경 변수 설정 방법 - Apache <a href='https://sangseek.com/sangseeks/설정 파일/ko'>설정 파일</a>에서 `SetEnv` 사용 - <a href='https://sangseek.com/sangseeks/Apache 설정/ko'>Apache 설정</a>(httpd.conf)이나 `.htaccess` 파일에서 다음과 같이 `SetEnv` 지시어로 환경 변수를 정의합니다. ``` SetEnv MY_ENV_VAR my_value ``` - 이 변수는 CGI, PHP 등 Apache 모듈이 읽는 환경 변수로 전달됩니다. - `PassEnv` 사용 - 이미 시스템 환경 변수로 등록된 변수를 Apache 설정에서 추가로 전달하고자 할 때 사용합니다. ``` PassEnv MY_ENV_VAR ``` - mod_env 모듈 활성화 - `SetEnv`나 `PassEnv`를 사용하려면 Apache의 mod_env 모듈이 활성화되어 있어야 합니다. - PHP 환경 변수 접근 - PHP 같은 경우 Apache 환경 변수를 `$_SERVER` 배열이나 `getenv()` 함수로 접근할 수 있습니다. --- 4. Nginx에서 환경 변수 설정 방법 - Nginx는 기본적으로 `env` 지시어를 사용하여 환경 변수를 설정하거나 상속받습니다. - 예를 들어 Nginx 메인 설정 파일(nginx.conf) `main` context에 다음과 같이 추가합니다. ``` env MY_ENV_VAR; ``` - Nginx는 기본적으로 환경 변수를 자식 프로세스에 전달하는 형태이므로, 시스템 환경 변수로 선 정의되어 있어야 하고 `env`를 통해 명시적으로 전달해야 합니다. - FastCGI/PHP-FPM와 연동 시 - PHP-FPM 등 FastCGI 프로세스에서는 별도로 PHP-FPM 설정 파일(pool .conf)에서 `env[MY_ENV_VAR] = my_value` 형태로 환경 변수를 지정할 수 있습니다. --- 5. IIS(Windows) 웹서버에서 환경 변수 설정 - IIS 자체에서는 환경 변수 설정 기능이 제한적입니다. - 윈도우 시스템 환경 변수 등록 후 IIS 재시작을 하는 것이 기본 방법입니다. - 또는 IIS의 웹 애플리케이션 풀 환경 변수 변경 시 `web.config` 파일 내 `<environmentVariables>` 태그를 사용하여 설정 가능합니다. 예: ```xml <configuration> <system.webServer> <aspNetCore> <environmentVariables> <environmentVariable name="MY_ENV_VAR" value="my_value" /> </environmentVariables> </aspNetCore> </system.webServer> </configuration> ``` --- 6. 웹 애플리케이션 내에서 환경 변수 접근 서버가 설정한 환경 변수는 웹 애플리케이션에서 다음과 같은 방식으로 접근합니다. - PHP: `getenv('MY_ENV_VAR')` 또는 `$_SERVER['MY_ENV_VAR']` - Python(Flask, Django): `os.environ.get('MY_ENV_VAR')` - Node.js: `process.env.MY_ENV_VAR` - Java: `System.getenv("MY_ENV_VAR")` --- 7. 요약 및 주의사항 - 환경 변수를 설정한 뒤에는 반드시 웹서버를 재시작해야 설정이 반영됩니다. - 운영체제의 환경 변수는 보통 서비스 관리자 권한으로 설정합니다. - 웹서버별 환경 변수 전달 방식이 다르므로, 사용하는 서버 문서를 참고하는 것이 중요합니다. - 민감한 정보(비밀번호, API 키 등)를 환경 변수로 관리할 때는 노출에 주의하고, 접근 권한 관리에 신경 써야 합니다. --- 결론 웹서버 환경 변수 설정은 운영체제에서 변수 정의 → 웹서버 설정에서 변수 전달 명시 → 웹 애플리케이션에서 변수 접근의 과정을 거칩니다. Apache는 `SetEnv`, Nginx는 `env` 지시어, IIS는 시스템 변수 또는 `web.config` 파일 등을 활용하는 것이 대표적 방법입니다. 각 방식마다 세부 <a href='https://sangseek.com/sangseeks/문법/ko'>문법</a>과 적용 위치가 다르므로 정확한 서버 환경을 파악하고 적절하게 적용하는 것이 중요합니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기