44 lines
1.4 KiB
Nginx Configuration File
44 lines
1.4 KiB
Nginx Configuration File
events {
|
|
worker_connections 1024;
|
|
}
|
|
|
|
http {
|
|
include /etc/nginx/mime.types;
|
|
default_type application/octet-stream;
|
|
|
|
server {
|
|
listen 80;
|
|
|
|
# 1. Requêtes vers l'API
|
|
location /api/ {
|
|
proxy_pass http://backend:8080;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
}
|
|
|
|
# 2. Tout le reste vers le Frontend
|
|
location / {
|
|
proxy_pass http://frontend:80;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
|
|
# --- GESTION DU ROUTAGE REACT (F5 / URLs directes) ---
|
|
# On intercepte le 404 du conteneur frontend pour renvoyer l'index.html
|
|
proxy_intercept_errors on;
|
|
error_page 404 =200 /index.html;
|
|
# -----------------------------------------------------
|
|
|
|
# Support des WebSockets (Hot-Reload en développement)
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "upgrade";
|
|
}
|
|
|
|
# Nécessaire pour que error_page puisse retrouver le fichier index.html
|
|
location = /index.html {
|
|
proxy_pass http://frontend:80/index.html;
|
|
}
|
|
}
|
|
} |