728x90
1. server block
- server 블록은 특정 처리에 대한 요청을 처리하는 서버 구성 요소
2. server_name
server {
server_name [서버명];
listen 80;
listen [::]:80;
location / {
proxy_pass [백엔드 서버 그룹명];
proxy_next_upstream error timeout http_500 http_502 http_503 http_504;
access_log [로그 경로] main;
}
3. listen
- listen 80: IPv4로 80번 포트(HTTP 기본 포트)에서 요청을 수신
- listen [::]:80: IPv6로 80번 포트에서 요청을 수신
- IPv4와 IPv6 두 가지 경우를 모두 처리할 수 있게 설정
4. location
- location / : 요청의 경로가 /로 시작하는 모든 요청에 대한 처리를 정의
- 즉, [백엔드 서버 그룹]에 대한 모든 요청을 처리하는 규칙
5. proxy_pass
proxy_pass [백엔드 서버 그룹명];
- proxy_pass: [서버 그룹명] 이름의 백엔드 서버 그룹으로 요청을 전달
- Nginx 설정 파일 내에 범위가 정의된 upstream블록일 가능성이 있음
- 예를 들어, 다양한 백엔드 서버를 정의하고 그 중 하나로 로드 밸런싱을 수행 가능
6. Proxy_next_upstream
- proxy_next_upstream: Nginx가 서버로 요청했을 때, 특정 오류가 발생한 경우 다른 백엔드 서버로 요청을 재시도
- error: Nginx에서 계속해서 오류가 발생하면 다시 시도
- timeout: 요청이 타임아웃 때 다른 백엔드 서버로 요청을 전달
- http_500, http_502, http_503, http_504: 백엔드 서버가 500, 502, 503, 504 오류를 반환할 경우, 다른 백엔드 서버로 재시도합니다.
7. access_log
- access_log: 액세스 권한이 있는 파일의 경로를 설정합니다. 여기에서는 [로그 경로] 파일에 요청 정보를 기록합니다.
요약:
- 이 설정은 명시된 서버에 대한 HTTP 요청을 처리하는 Nginx 서버 설정이다.
- 요청은 /모든 요청에 대해 백엔드 auth-http로, 특정 오류(500, 502, 503, 504)나 타임아웃이 발생하면 Nginx가 다른 백엔드 서버로 요청을 다시 전달
- 요청에 대한 액세스 권한이 [로그 파일 경로]에 기록
이를 통해 클라이언트 요청을 백엔드 서버로 제공하고 오류가 발생하면 자동으로 다른 서버로 요청을 시도
728x90
'nginx' 카테고리의 다른 글
[nginx] FastCGI & PHP-FPM (1) | 2025.04.25 |
---|---|
리버스 프록시 서버? (0) | 2024.11.09 |
[nginx] error 로그 유형 및 대응방안 (1) | 2024.11.07 |
[Nginx] SSL 인증서 갱신 (0) | 2024.09.02 |
nginx? (0) | 2024.08.26 |