penpot/frontend/docker-nginx/conf.d/default.conf
2019-02-19 21:44:22 +01:00

68 lines
2 KiB
Text

# This will load balance your backend to one or more destinations.
upstream uxboxbackend {
# server api1.uxbox.{{ DOMAIN }}:3000;
# server api1.uxbox.{{ DOMAIN }}:3001;
# server api2.uxbox.{{ DOMAIN }}:3000;
server uxbackend:6060; # This is a circular reference that allows docker to start as the example project
}
server {
listen 80 default_server;
listen [::]:80 default_server;
#listen 443 ssl http2 default_server;
#listen [::]:443 ssl http2 default_server;
#ssl_certificate /etc/nginx/keys/server.crt;
#ssl_certificate_key /etc/nginx/keys/server.key;
#ssl on;
#ssl_session_cache builtin:1000 shared:SSL:10m;
#ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
#ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
#ssl_prefer_server_ciphers on;
#server_name uxbox.{{ DOMAIN }};
server_name _;
# Frontend
location / {
root /usr/share/nginx/html/;
try_files $uri /index.html;
gzip on;
gzip_types text/css text/javascript application/x-javascript application/javascript application/json;
add_header Cache-Control "max-age=15552000" always;
}
location /view {
alias /usr/share/nginx/html/view;
}
location /media {
alias /srv/uxbox/resources/media;
}
location /static {
alias /srv/uxbox/resources/static;
}
# Backend
location /api/ {
# Reverse Proxy to Backend (Avoids XSS concerns) --Update backend to be whatever your site uses to access your backend
proxy_pass http://uxboxbackend;
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;
# IMPORTANT: Update uxbox.{{ DOMAIN }} to your production site. This will allow cookies to work as expected when using your deployment locally
#proxy_cookie_domain localhost uxbox.{{ DOMAIN }};
}
}