|
@ -0,0 +1,56 @@ |
|
|
|
|
|
server { |
|
|
|
|
|
|
|
|
|
|
|
# Listen for connection on (internal) port 80 |
|
|
|
|
|
listen 80; |
|
|
|
|
|
|
|
|
|
|
|
location / { |
|
|
|
|
|
# Change 'inventree-server' to the name of the inventree server container, |
|
|
|
|
|
# and '8000' to the INVENTREE_WEB_PORT (if not default) |
|
|
|
|
|
proxy_pass http://inventree-server:8000; |
|
|
|
|
|
|
|
|
|
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; |
|
|
|
|
|
proxy_set_header Host $http_host; |
|
|
|
|
|
|
|
|
|
|
|
proxy_redirect off; |
|
|
|
|
|
|
|
|
|
|
|
client_max_body_size 100M; |
|
|
|
|
|
|
|
|
|
|
|
proxy_set_header X-Real-IP $remote_addr; |
|
|
|
|
|
proxy_set_header X-Forwarded-Proto $scheme; |
|
|
|
|
|
|
|
|
|
|
|
proxy_buffering off; |
|
|
|
|
|
proxy_request_buffering off; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
# Redirect any requests for static files |
|
|
|
|
|
location /static/ { |
|
|
|
|
|
alias /var/www/static/; |
|
|
|
|
|
autoindex on; |
|
|
|
|
|
|
|
|
|
|
|
# Caching settings |
|
|
|
|
|
expires 30d; |
|
|
|
|
|
add_header Pragma public; |
|
|
|
|
|
add_header Cache-Control "public"; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
# Redirect any requests for media files |
|
|
|
|
|
location /media/ { |
|
|
|
|
|
alias /var/www/media/; |
|
|
|
|
|
|
|
|
|
|
|
# Media files require user authentication |
|
|
|
|
|
auth_request /auth; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
# Use the 'user' API endpoint for auth |
|
|
|
|
|
location /auth { |
|
|
|
|
|
internal; |
|
|
|
|
|
|
|
|
|
|
|
proxy_pass http://inventree-server:8000/auth/; |
|
|
|
|
|
|
|
|
|
|
|
proxy_pass_request_body off; |
|
|
|
|
|
proxy_set_header Content-Length ""; |
|
|
|
|
|
proxy_set_header X-Original-URI $request_uri; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |