mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-03-15 09:24:34 +01:00
Refactor Nginx configuration for ingress handling
This commit is contained in:
@@ -7,40 +7,54 @@ server {
|
||||
listen %%interface%%:%%port%% default_server;
|
||||
server_name netalertx;
|
||||
proxy_buffering off;
|
||||
|
||||
include /etc/nginx/includes/server_params.conf;
|
||||
include /etc/nginx/includes/proxy_params.conf;
|
||||
|
||||
location ~ ^/php%%ingress_entry%%/(.*)$ {
|
||||
rewrite ^/php%%ingress_entry%%/(.*)$ /php/$1 break;
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:20211/;
|
||||
|
||||
rewrite ^%%ingress_entry%%/?(.*)$ /$1 break;
|
||||
sub_filter_once off;
|
||||
sub_filter_types *;
|
||||
sub_filter 'href="/' 'href="%%ingress_entry%%/';
|
||||
sub_filter '(?>$host)/css/' '%%ingress_entry%%/css/';
|
||||
sub_filter '(?>$host)/js/' '%%ingress_entry%%/js/';
|
||||
sub_filter '/img/' '%%ingress_entry%%/img/';
|
||||
sub_filter '/lib/' '%%ingress_entry%%/lib/';
|
||||
sub_filter '/php/' '%%ingress_entry%%/php/';
|
||||
sub_filter '"/server' '"%%ingress_entry%%/server';
|
||||
|
||||
# Next three lines allow websockets
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
sub_filter_once off;
|
||||
sub_filter_types *;
|
||||
|
||||
sub_filter '"/server' '"%%ingress_entry%%/server';
|
||||
sub_filter 'href="/' 'href="%%ingress_entry%%/';
|
||||
sub_filter 'src="/' 'src="%%ingress_entry%%/';
|
||||
sub_filter 'action="/' 'action="%%ingress_entry%%/';
|
||||
sub_filter '(?>$host)/css/' '%%ingress_entry%%/css/';
|
||||
sub_filter '(?>$host)/js/' '%%ingress_entry%%/js/';
|
||||
sub_filter '/img/' '%%ingress_entry%%/img/';
|
||||
sub_filter '/lib/' '%%ingress_entry%%/lib/';
|
||||
sub_filter '/php/' '%%ingress_entry%%/php/';
|
||||
# sub_filter '"/server"' '"%%ingress_entry%%/server"';
|
||||
# sub_filter "'/server'" "'%%ingress_entry%%/server'";
|
||||
# sub_filter "fetch(sseUrl" "fetch(%%ingress_entry%%sseUrl";
|
||||
|
||||
# Websocket support
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
|
||||
# Allow downloading fragments
|
||||
proxy_set_header Range $http_range;
|
||||
proxy_set_header If-Range $http_if_range;
|
||||
|
||||
# Improve ip handling
|
||||
proxy_hide_header X-Powered-By;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_connect_timeout 30m;
|
||||
proxy_send_timeout 30m;
|
||||
proxy_read_timeout 30m;
|
||||
add_header X-Frame-Options "SAMEORIGIN";
|
||||
proxy_hide_header X-Powered-By;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
proxy_set_header Accept-Encoding "";
|
||||
|
||||
proxy_connect_timeout 30m;
|
||||
proxy_send_timeout 30m;
|
||||
proxy_read_timeout 30m;
|
||||
|
||||
add_header X-Frame-Options "SAMEORIGIN";
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user