Initial commit
This commit is contained in:
@@ -0,0 +1,107 @@
|
||||
{
|
||||
auto_https off
|
||||
servers {
|
||||
max_header_size 8KB
|
||||
trusted_proxies static private_ranges
|
||||
client_ip_headers X-Forwarded-For X-Real-IP
|
||||
}
|
||||
}
|
||||
|
||||
:80 {
|
||||
request_body {
|
||||
max_size 50GB
|
||||
}
|
||||
|
||||
# ===== UNGUARDED PATHS (login/auth/logout) =====
|
||||
handle_path /auth/* {
|
||||
reverse_proxy auth:8000
|
||||
}
|
||||
|
||||
handle /login {
|
||||
rewrite * /
|
||||
reverse_proxy auth:8000
|
||||
}
|
||||
|
||||
handle_path /login/* {
|
||||
reverse_proxy auth:8000
|
||||
}
|
||||
|
||||
handle /logout {
|
||||
reverse_proxy auth:8000/api/logout
|
||||
redir /login 302
|
||||
}
|
||||
|
||||
# ===== GUARDED ROUTES =====
|
||||
# forward_auth as a route-level directive: applied to all subsequent handles
|
||||
route {
|
||||
forward_auth auth:8000 {
|
||||
uri /api/check
|
||||
header_up X-Real-IP {client_ip}
|
||||
header_up X-Forwarded-Uri {uri}
|
||||
copy_headers Cookie
|
||||
}
|
||||
|
||||
handle_path /maps/* {
|
||||
root * /srv/maps
|
||||
file_server
|
||||
}
|
||||
handle_path /weather/* {
|
||||
root * /srv/weather
|
||||
file_server
|
||||
}
|
||||
handle_path /garden/* {
|
||||
root * /srv/garden
|
||||
file_server
|
||||
}
|
||||
|
||||
@kiwixApi path /library/viewer* /library/content* /library/catalog* /library/skin* /library/search* /library/suggest* /library/raw* /library/ROOT*
|
||||
handle @kiwixApi {
|
||||
reverse_proxy kiwix:8080
|
||||
}
|
||||
|
||||
handle_path /library-admin/* {
|
||||
reverse_proxy zim-upload:8000
|
||||
}
|
||||
|
||||
handle_path /library/* {
|
||||
root * /srv/library
|
||||
file_server
|
||||
try_files {path} /index.html
|
||||
}
|
||||
handle /library {
|
||||
redir /library/ 301
|
||||
}
|
||||
|
||||
@freqs path /freqs /freqs/*
|
||||
handle @freqs {
|
||||
uri strip_prefix /freqs
|
||||
reverse_proxy freqs:8000
|
||||
}
|
||||
|
||||
@inventory path /inventory /inventory/*
|
||||
handle @inventory {
|
||||
uri strip_prefix /inventory
|
||||
reverse_proxy inventory:8000
|
||||
}
|
||||
|
||||
@overlay path /overlay /overlay/*
|
||||
handle @overlay {
|
||||
uri strip_prefix /overlay
|
||||
reverse_proxy overlay:8000
|
||||
}
|
||||
|
||||
@search path /search /search/*
|
||||
handle @search {
|
||||
uri strip_prefix /search
|
||||
reverse_proxy search:8000
|
||||
}
|
||||
|
||||
handle_path /pdfs/* {
|
||||
reverse_proxy pdfs:8000
|
||||
}
|
||||
|
||||
handle {
|
||||
reverse_proxy homepage:3000
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user