mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-01-11 10:21:02 +01:00
Improve
This commit is contained in:
@@ -111,6 +111,6 @@
|
||||
"slug": "tandoor_recipes",
|
||||
"udev": true,
|
||||
"url": "https://github.com/alexbelgium/hassio-addons",
|
||||
"version": "1.5.6-test_ssl",
|
||||
"version": "1.5.6-test_ssl2",
|
||||
"webui": "[PROTO:ssl]://[HOST]:[PORT:8080]"
|
||||
}
|
||||
|
||||
@@ -1,112 +0,0 @@
|
||||
server {
|
||||
listen %%interface%%:%%port%% default_server;
|
||||
include /etc/nginx/includes/server_params.conf;
|
||||
include /etc/nginx/includes/proxy_params.conf;
|
||||
client_max_body_size 0;
|
||||
|
||||
root /opt/recipes/cookbook;
|
||||
|
||||
location /switch-space/ {
|
||||
proxy_pass http://127.0.0.1:8080/switch-space/;
|
||||
|
||||
proxy_redirect "/" "%%ingress_entry%%/";
|
||||
|
||||
# Allow ingress subpath
|
||||
#proxy_set_header X-Script-Name %%ingress_entry%%;
|
||||
proxy_cookie_path / %%ingress_entry%%/;
|
||||
|
||||
# Allow frames
|
||||
add_header X-Frame-Options SAMEORIGIN;
|
||||
add_header Access-Control-Allow-Origin *;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
|
||||
# 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-Host $x_host;
|
||||
proxy_set_header X-Port $x_port;
|
||||
proxy_set_header X-Forwarded-Proto $x_scheme;
|
||||
|
||||
proxy_set_header Host $x_host$x_port; # Required for addresses without ports
|
||||
|
||||
# Correct url without port when using https
|
||||
absolute_redirect off;
|
||||
sub_filter_once off;
|
||||
sub_filter_types *;
|
||||
sub_filter https://$x_host/ https://$x_host$x_port/;
|
||||
sub_filter http://$x_host/ http://$x_host$x_port/;
|
||||
sub_filter "/static" "%%ingress_entry%%/static";
|
||||
sub_filter "/media" "%%ingress_entry%%/media";
|
||||
sub_filter "http://127.0.0.1:8080/" "/";
|
||||
}
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:8080;
|
||||
proxy_buffering off;
|
||||
proxy_read_timeout 30;
|
||||
proxy_set_header Connection "Upgrade";
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
|
||||
# Allow ingress subpath
|
||||
proxy_set_header X-Script-Name %%ingress_entry%%;
|
||||
proxy_cookie_path / %%ingress_entry%%/;
|
||||
|
||||
# Allow frames
|
||||
proxy_hide_header "Content-Security-Policy";
|
||||
add_header X-Frame-Options SAMEORIGIN; # Required for ingress frame
|
||||
add_header Access-Control-Allow-Origin *;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
|
||||
# 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-Host $x_host;
|
||||
proxy_set_header X-Port $x_port;
|
||||
proxy_set_header X-Forwarded-Proto $x_scheme;
|
||||
|
||||
proxy_set_header Host $x_host$x_port; # Required for addresses without ports
|
||||
|
||||
# Correct url without port when using https
|
||||
absolute_redirect off;
|
||||
sub_filter_once off;
|
||||
sub_filter_types *;
|
||||
sub_filter https://$x_host/ https://$x_host$x_port/;
|
||||
sub_filter http://$x_host/ http://$x_host$x_port/;
|
||||
|
||||
# Rewrite url
|
||||
sub_filter "/static" "%%ingress_entry%%/static";
|
||||
sub_filter "/media" "%%ingress_entry%%/media";
|
||||
sub_filter "http://127.0.0.1:8080/" "/";
|
||||
}
|
||||
|
||||
location /media/ {
|
||||
alias /config/addons_config/tandoor_recipes/mediafiles/;
|
||||
}
|
||||
|
||||
location /static/ {
|
||||
alias /data/recipes/staticfiles/;
|
||||
}
|
||||
|
||||
}
|
||||
8
tandoor_recipes/rootfs/etc/services.d/nginx/finish
Normal file
8
tandoor_recipes/rootfs/etc/services.d/nginx/finish
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/usr/bin/execlineb -S0
|
||||
# ==============================================================================
|
||||
# Take down the S6 supervision tree when Nginx fails
|
||||
# ==============================================================================
|
||||
if { s6-test ${1} -ne 0 }
|
||||
if { s6-test ${1} -ne 256 }
|
||||
|
||||
s6-svscanctl -t /var/run/s6/services
|
||||
9
tandoor_recipes/rootfs/etc/services.d/nginx/run
Normal file
9
tandoor_recipes/rootfs/etc/services.d/nginx/run
Normal file
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/with-contenv bashio
|
||||
# shellcheck shell=bash
|
||||
set -e
|
||||
# ==============================================================================
|
||||
|
||||
bashio::net.wait_for "$port" localhost 8081
|
||||
|
||||
bashio::log.info "Starting NGinx..."
|
||||
exec nginx
|
||||
Reference in New Issue
Block a user