{"apps":{"http":{"servers":{"srv0":{"errors":{"routes":[{"handle":[{"handler":"subroute","routes":[{"group":"group2","handle":[{"handler":"rewrite","uri":"/index.php?error=404"}],"match":[{"expression":"{http.error.status_code} == 404"}]},{"handle":[{"handler":"static_response","headers":{"Location":["{http.request.orig_uri.path}/{http.request.orig_uri.prefixed_query}"]},"status_code":308}],"match":[{"file":{"try_files":["{http.request.uri.path}/index.php"]},"not":[{"path":["*/"]}]}]},{"handle":[{"handler":"rewrite","uri":"{http.matchers.file.relative}"}],"match":[{"file":{"split_path":[".php"],"try_files":["{http.request.uri.path}","{http.request.uri.path}/index.php","index.php"],"try_policy":"first_exist_fallback"}}]},{"handle":[{"handler":"reverse_proxy","transport":{"protocol":"fastcgi","split_path":[".php"]},"upstreams":[{"dial":"php:9000"}]}],"match":[{"path":["*.php"]}]}]}]}]},"listen":[":80"],"routes":[{"handle":[{"handler":"vars","root":"/srv/easystream"},{"handler":"headers","response":{"set":{"Referrer-Policy":["strict-origin-when-cross-origin"],"X-Content-Type-Options":["nosniff"]}}},{"encodings":{"gzip":{},"zstd":{}},"handler":"encode","prefer":["zstd","gzip"]}]},{"handle":[{"handler":"subroute","routes":[{"handle":[{"handler":"rewrite","strip_path_prefix":"/hls"}]},{"handle":[{"handler":"vars","root":"/var/www/hls"},{"handler":"headers","response":{"set":{"Cache-Control":["no-cache"]}}},{"handler":"headers","response":{"set":{"Access-Control-Allow-Origin":["*"]}}},{"handler":"file_server","hide":["/etc/caddy/Caddyfile"]}]}]}],"match":[{"path":["/hls/*"]}]},{"handle":[{"handler":"subroute","routes":[{"group":"group1","handle":[{"handler":"rewrite","uri":"/f_modules/m_frontend/m_donations/token_purchase.php"}],"match":[{"path":["/token_purchase","/token-purchase","/tokens"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/f_modules/m_frontend/m_donations/token_redemption.php"}],"match":[{"path":["/token_redemption","/token-redemption"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/f_modules/m_frontend/m_donations/rainforest_donation_form.php"}],"match":[{"path":["/donate","/donation"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/status.php"}],"match":[{"path":["/health","/status"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/parser.php"}],"match":[{"path":["/upload"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/parser.php"}],"match":[{"path":["/signin","/login"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/parser.php"}],"match":[{"path":["/signup","/register"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/admin.php"}],"match":[{"path":["/admin","/admin/*"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/parser.php"}],"match":[{"path":["/"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/tests/preflight.php"}],"match":[{"path":["/preflight"]}]},{"handle":[{"handler":"static_response","headers":{"Location":["/"]},"status_code":301}],"match":[{"path_regexp":{"name":"oldhome","pattern":"^.*/home$"}}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/f_data/data_userfiles/user_media/default.mp4"}],"match":[{"path":["/previews/default.mp4"]}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/f_data/data_userfiles/user_media/{http.regexp.prev_stream.1}/s/{http.regexp.prev_stream.2}.mp4"}],"match":[{"path_regexp":{"name":"prev_stream","pattern":"^/previews/s/([^/]+)/([^/]+)\\.mp4$"}}]},{"group":"group1","handle":[{"handler":"rewrite","uri":"/f_data/data_userfiles/user_media/{http.regexp.prev_video.1}/v/{http.regexp.prev_video.2}.mp4"}],"match":[{"path_regexp":{"name":"prev_video","pattern":"^/previews/([^/]+)/([^/]+)\\.mp4$"}}]},{"handle":[{"handler":"static_response","status_code":403}],"match":[{"path":["*.inc","*.inc.php","*.shtml","*.cgi","*.pl","*.py","*.asp","*.aspx","*.sh","*.cin","*.tpl","*.tplb","*.log"]}]},{"handle":[{"handler":"headers","response":{"set":{"Cache-Control":["public, max-age=604800"]}}}],"match":[{"path":["*.ico","*.pdf","*.flv","*.gif","*.jpg","*.jpeg","*.png","*.svg","*.webp","*.css","*.js","*.eot","*.woff","*.otf","*.ttf"]}]},{"handle":[{"handler":"static_response","headers":{"Location":["{http.request.orig_uri.path}/{http.request.orig_uri.prefixed_query}"]},"status_code":308}],"match":[{"file":{"try_files":["{http.request.uri.path}/index.php"]},"not":[{"path":["*/"]}]}]},{"handle":[{"handler":"rewrite","uri":"{http.matchers.file.relative}"}],"match":[{"file":{"split_path":[".php"],"try_files":["{http.request.uri.path}","{http.request.uri.path}/index.php","index.php"],"try_policy":"first_exist_fallback"}}]},{"handle":[{"handler":"reverse_proxy","transport":{"protocol":"fastcgi","split_path":[".php"]},"upstreams":[{"dial":"php:9000"}]}],"match":[{"path":["*.php"]}]},{"handle":[{"handler":"file_server","hide":["/etc/caddy/Caddyfile"]}]}]}]}]}}}},"logging":{"logs":{"default":{"level":"DEBUG"}}}}