diff --git a/docker-compose.yml b/docker-compose.yml index 7b65e9a..4f03eb7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -20,6 +20,10 @@ services: restart: unless-stopped volumes: - ./html:/usr/share/nginx/html:ro + - ./nginx.conf:/etc/nginx/conf.d/default.conf:ro + networks: + - default + - mailcow-network # 3. Contact Form Email Handler mail-contact: diff --git a/html/assets/js/script.js b/html/assets/js/script.js index 69d20cf..084ff7a 100644 --- a/html/assets/js/script.js +++ b/html/assets/js/script.js @@ -75,10 +75,8 @@ if (contactSubmitBtn) { contactStatus.classList.add('hidden'); try { - // Python FastAPI 엔드포인트로 요청 - // 현재 페이지의 호스트를 사용 - const apiUrl = `${window.location.protocol}//${window.location.hostname}:8001/api/contact`; - const response = await fetch(apiUrl, { + // FastAPI 엔드포인트로 요청 (nginx 프록시를 통함) + const response = await fetch('/api/contact', { method: 'POST', headers: { 'Content-Type': 'application/json' diff --git a/html/status.json b/html/status.json index 47048ee..d1dfd8a 100644 --- a/html/status.json +++ b/html/status.json @@ -1 +1 @@ -{"cpu_temp": "42", "nvme_temp": "35", "uptime_days": 2, "last_update": "06:22:01"} \ No newline at end of file +{"cpu_temp": "43", "nvme_temp": "35", "uptime_days": 2, "last_update": "06:28:01"} \ No newline at end of file diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 0000000..b4a66af --- /dev/null +++ b/nginx.conf @@ -0,0 +1,28 @@ +server { + listen 80; + listen [::]:80; + server_name localhost; + + location / { + root /usr/share/nginx/html; + index index.html index.htm; + } + + # API 프록시 + location /api/ { + proxy_pass http://hanmo-mail-contact:8001; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection 'upgrade'; + proxy_set_header Host $host; + proxy_cache_bypass $http_upgrade; + 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; + } + + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html; + } +}