Files
hassio-addons/spotweb/rootfs/etc/nginx/servers/ingress.conf

62 lines
1.9 KiB
Plaintext

server {
listen 8099 default_server;
root /dev/null;
server_name $hostname;
# server params
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
# proxy params
proxy_http_version 1.1;
proxy_ignore_client_abort off;
proxy_read_timeout 86400s;
proxy_redirect off;
proxy_send_timeout 86400s;
proxy_max_temp_file_size 0;
proxy_set_header Accept-Encoding "";
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $http_host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Uri $http_x_ingress_path;
proxy_set_header X-SSL true;
# avoid mixed content
# Ensure work with both http and https (code by @met67)
if ($http_referer ~* "^(http[s]?)://([^:]+):(\d*)(/.*)$") {
set $x_scheme $1;
set $x_host $2;
set $x_port ":$3";
}
# Ensure works if standard port (code by @met67)
if ($http_referer ~* "^(http[s]?)://([^:]+)(/.*)$") {
set $x_scheme $1;
set $x_host $2;
set $x_port "";
}
proxy_set_header X-Scheme $x_scheme;
proxy_set_header X-Forwarded-Proto $x_scheme;
# Correct url without port when using https
sub_filter_once off;
sub_filter_types *;
sub_filter https://$host/ $x_scheme://$host$x_port/;
sub_filter http://$host/ $x_scheme://$host$x_port/;
rewrite ^(.*)/api/hassio_ingress/.*(/api/hassio_ingress/.*)$ $1$2 permanent;
location / {
allow 172.30.32.2;
deny all;
proxy_pass http://127.0.0.1:80;
}
}