Infra 환경 구성 - g-market/b-shop-backend GitHub Wiki

서버 인프라 환경 구성

Reverse Proxy

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

events {
  worker_connections 1024;
}

http {
  include /etc/nginx/mime.types;
  default_type application/octet-stream;
  access_log /var/log/nginx/access.log combined;

  upstream b-shop-server {
    ip_hash;
    server b-shop-server-1:80 max_fails=3 fail_timeout=30s;
    server b-shop-server-2:80 max_fails=3 fail_timeout=30s;
  }

  server {
    listen 80;
    server_name bshop.com;

    location / {
      proxy_pass http://b-shop-server;
      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-Host $server_name;
    }

    # Health check endpoint
    location /health {
      access_log off;
      proxy_pass http://b-shop-server;
      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-Host $server_name;
      proxy_intercept_errors on;
    }
  }
}