computer-playbook/roles/native-nginx-docker-proxy/templates/proxy_pass.conf.j2

48 lines
1.3 KiB
Django/Jinja

location /
{
{% if https_port is defined %}
proxy_pass https://127.0.0.1:{{https_port}}/;
{% else %}
proxy_pass http://127.0.0.1:{{http_port}}/;
{% endif %}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
send_timeout 300;
# general caching
proxy_cache cache;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid any 1m;
# cache media files
location ~* \.(gif|ico|jpg|jpeg|png|svg|mp4|mp3|pdf)$ {
proxy_cache cache;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid 200 301 302 365d;
expires 365d;
{% if https_port is defined %}
proxy_pass https://127.0.0.1:{{https_port}};
{% else %}
proxy_pass http://127.0.0.1:{{http_port}};
{% endif %}
}
# cache content
location ~* \.(html|css|js)$ {
proxy_cache cache;
proxy_cache_key $host$uri$is_args$args;
proxy_cache_valid 200 301 302 30m;
expires 30m;
{% if https_port is defined %}
proxy_pass https://127.0.0.1:{{https_port}};
{% else %}
proxy_pass http://127.0.0.1:{{http_port}};
{% endif %}
}
}