2024 07 08
2024-07-08¶
Nginx server_name¶
참고: https://nginx.org/en/docs/http/ngx_http_core_module.html#server_name
참고: https://nginx.org/en/docs/http/request_processing.html
참고: https://developer.mozilla.org/ko/docs/Web/HTTP/Headers/Host
- 개요
- HTTP/1.1 요청 메시지 내에는
Host헤더가 필수임Host누락시 400 (Bad Request) 반환
- HTTP/1.1 요청 메시지 내에는
server_name- 가상 서버를 configure
- IP-based 가능하고,
- name-based 가능하다 (여기가 Http header "Host"로 동작)
- "
*"로 asterisk 처리도 가능 - "
~"로 regex 처리도 가능
- "
- 가상 서버를 configure
- Name-based virtual servers Nginx가 요청 처리하는 법
- 어떤 서버로 요청 처리시킬지 결정
server_name과 HttpHost헤더를 통해 어디로 라우팅 할지 결정default_server파라미터를 통해 어디로 기본적으로 매핑 시킬지 지정할 수 있어
- 어떤 서버로 요청 처리시킬지 결정
-
Proxy로 동작중이라면...
- 리버스 프록시로 구성된 nginx에서는 proxy_set_header 로 여러가지 헤더를 설정할 수 있음
- 여기서 기본적으로 설정안한 헤더는 요청의 것을 그대로 넘김
- Host를 내맘대로 여기서 바꿔주면 proxy_pass 에서 요청받은 친구의 server_name과 Host가 일치하지 않으면 403 에러가 날 수 있어