Server/Nginx
nginx.conf에서 몇가지 용어들
doriver
2024. 6. 20. 11:22
1. location ~* .html$ { }
location 지시문 : 특정 URL 패턴에 대한 요청을 처리하는 방법을 정의
~* : 정규 표현식을 사용하여 URL 패턴을 매칭할 것을 의미, 대소문자를 구분하지 않는다.
$ : 문자열의 끝을 의미합니다. 따라서 .html로 끝나는 문자열을 매칭
2.
# 캐시 키 정의
proxy_cache_key "$scheme$request_method$host$request_uri";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
http://example.com/path/to/resource?foo=bar
X-Forwarded-Proto, $scheme
요청의 프로토콜
ex) http, https
$host
요청의 호스트 헤더값
ex) example.com
$request_uri
클라이언트가 요청한 URI
ex) /path/to/resource?foo=bar
다중 프록시
클라이언트 A( 203.0.113.195 )
→ 프록시 서버 P1( 70.41.3.18 ) → 프록시 서버 P2( 150.172.238.178 )
→ 웹 서버
X-Real-IP, $remote_addr
클라이언트의 실제 IP 주소
ex) 203.0.113.195
X-Forwarded-For
클라이언트의 실제 IP 주소를 포함하여, 요청이 지나온 모든 프록시 서버의 IP 주소를 포함
백엔드 서버는 요청이 어떤 경로를 거쳐 왔는지 알 수 있다.
ex) 203.0.113.195, 70.41.3.18, 150.172.238.178
$proxy_add_x_forwarded_for
기존의 X-Forwarded-For 헤더 값에 현재 프록시의 ip주소를 추가한 값