
proxy_set_header 명령어는 NGINX에서 사용하는 명령어로, HTTP 요청 헤더를 설정하는 데 사용됩니다.
proxy_set_header X-Real-IP $remote_addr; 명령어는 클라이언트의 IP 주소를 서버로 전달하는 방식은 다음과 같습니다.
1. 클라이언트가 서버에 요청을 보내면, NGINX는 클라이언트의 IP 주소를 $remote_addr 변수에 저장합니다.
2. proxy_set_header 명령어는 NGINX가 HTTP 요청 헤더에 X-Real-IP라는 이름의 헤더를 추가하고, 그 헤더의 값으로 $remote_addr 변수를 사용합니다.
3. 서버는 이 헤더를 받고, 클라이언트의 IP 주소를 인식할 수 있습니다.
이 명령어를 사용하여 클라이언트의 IP 주소를 다른 서버로 전달하는 방법은 다음과 같습니다.
1. NGINX를 사용하여 클라이언트의 요청을 중간 서버로 전달합니다.
2. 중간 서버는 proxy_set_header 명령어를 사용하여 클라이언트의 IP 주소를 다른 서버로 전달합니다.
3. 다른 서버는 이 헤더를 받고, 클라이언트의 IP 주소를 인식할 수 있습니다.
예를 들어, NGINX를 사용하여 클라이언트의 요청을 중간 서버로 전달하고, 중간 서버를 사용하여 클라이언트의 IP 주소를 다른 서버로 전달하는 예제는 다음과 같습니다.
#hostingforum.kr
nginx
http {
upstream backend {
server 192.168.1.100:80;
}
server {
listen 80;
location / {
proxy_pass http://backend;
proxy_set_header X-Real-IP $remote_addr;
}
}
}
#hostingforum.kr
nginx
http {
upstream backend {
server 192.168.1.200:80;
}
server {
listen 80;
location / {
proxy_pass http://backend;
proxy_set_header X-Real-IP $remote_addr;
}
}
}
이 예제에서는 NGINX가 클라이언트의 요청을 중간 서버(192.168.1.100)로 전달하고, 중간 서버가 proxy_set_header 명령어를 사용하여 클라이언트의 IP 주소를 다른 서버(192.168.1.200)로 전달합니다.
2025-05-18 22:43