mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-06-15 11:59:11 +02:00
Improve
This commit is contained in:
@@ -111,6 +111,6 @@
|
|||||||
"slug": "tandoor_recipes",
|
"slug": "tandoor_recipes",
|
||||||
"udev": true,
|
"udev": true,
|
||||||
"url": "https://github.com/alexbelgium/hassio-addons",
|
"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]"
|
"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