Sync current dev state
This commit is contained in:
133
Caddyfile
133
Caddyfile
@@ -8,50 +8,7 @@
|
||||
root * /srv/easystream
|
||||
encode zstd gzip
|
||||
|
||||
# PHP files go directly to PHP handler
|
||||
@php_files path *.php
|
||||
handle @php_files {
|
||||
php_fastcgi php:9000 {
|
||||
try_files {path} /parser.php?{query}
|
||||
}
|
||||
}
|
||||
file_server
|
||||
|
||||
# Token System Routes (Direct handling)
|
||||
@token_purchase path /token_purchase /token-purchase /tokens
|
||||
rewrite @token_purchase /f_modules/m_frontend/m_donations/token_purchase.php
|
||||
|
||||
@token_redemption path /token_redemption /token-redemption
|
||||
rewrite @token_redemption /f_modules/m_frontend/m_donations/token_redemption.php
|
||||
|
||||
# Donation Routes
|
||||
@donate path /donate /donation
|
||||
rewrite @donate /f_modules/m_frontend/m_donations/rainforest_donation_form.php
|
||||
|
||||
# System Status Route
|
||||
@health path /health /status
|
||||
rewrite @health /status.php
|
||||
|
||||
# Upload Route (handled by parser)
|
||||
@upload path /upload
|
||||
rewrite @upload /parser.php
|
||||
|
||||
# Authentication Routes (handled by parser)
|
||||
@signin path /signin /login
|
||||
rewrite @signin /parser.php
|
||||
|
||||
@signup path /signup /register
|
||||
rewrite @signup /parser.php
|
||||
|
||||
# Admin panel routing
|
||||
@admin path /admin /admin/*
|
||||
rewrite @admin /admin.php
|
||||
|
||||
# Homepage (handled by parser)
|
||||
@root path /
|
||||
rewrite @root /parser.php
|
||||
|
||||
# Serve HLS (from SRS volume) under /hls
|
||||
# Serve HLS (from SRS volume) under /hls (handled before general routing)
|
||||
handle_path /hls/* {
|
||||
root * /var/www/hls
|
||||
header Cache-Control "no-cache"
|
||||
@@ -59,36 +16,76 @@
|
||||
file_server
|
||||
}
|
||||
|
||||
# Unified routing: apply rewrites first, then php_fastcgi, then file_server
|
||||
route {
|
||||
# Token System Routes (Direct handling)
|
||||
@token_purchase path /token_purchase /token-purchase /tokens
|
||||
rewrite @token_purchase /f_modules/m_frontend/m_donations/token_purchase.php
|
||||
|
||||
# Preflight at a friendly path
|
||||
@preflight path /preflight
|
||||
rewrite @preflight /tests/preflight.php
|
||||
@token_redemption path /token_redemption /token-redemption
|
||||
rewrite @token_redemption /f_modules/m_frontend/m_donations/token_redemption.php
|
||||
|
||||
# Redirect old "home" to root
|
||||
@oldhome path_regexp oldhome ^.*/home$
|
||||
redir @oldhome / 301
|
||||
# Donation Routes
|
||||
@donate path /donate /donation
|
||||
rewrite @donate /f_modules/m_frontend/m_donations/rainforest_donation_form.php
|
||||
|
||||
# Previews mapping to actual files
|
||||
@prev_default path /previews/default.mp4
|
||||
rewrite @prev_default /f_data/data_userfiles/user_media/default.mp4
|
||||
# System Status Route
|
||||
@health path /health /status
|
||||
rewrite @health /status.php
|
||||
|
||||
@prev_stream path_regexp prev_stream ^/previews/s/([^/]+)/([^/]+)\.mp4$
|
||||
rewrite @prev_stream /f_data/data_userfiles/user_media/{re.prev_stream.1}/s/{re.prev_stream.2}.mp4
|
||||
# Upload Route (handled by parser)
|
||||
@upload path /upload
|
||||
rewrite @upload /parser.php
|
||||
|
||||
@prev_video path_regexp prev_video ^/previews/([^/]+)/([^/]+)\.mp4$
|
||||
rewrite @prev_video /f_data/data_userfiles/user_media/{re.prev_video.1}/v/{re.prev_video.2}.mp4
|
||||
# Authentication Routes (handled by parser)
|
||||
@signin path /signin /login
|
||||
rewrite @signin /parser.php
|
||||
|
||||
# Block sensitive source/template/log files
|
||||
@blocked {
|
||||
path *.inc *.inc.php *.shtml *.cgi *.pl *.py *.asp *.aspx *.sh *.cin *.tpl *.tplb *.log
|
||||
@signup path /signup /register
|
||||
rewrite @signup /parser.php
|
||||
|
||||
# Admin panel routing
|
||||
@admin path /admin /admin/*
|
||||
rewrite @admin /admin.php
|
||||
|
||||
# Homepage (handled by parser)
|
||||
@root path /
|
||||
rewrite @root /parser.php
|
||||
|
||||
# Preflight at a friendly path
|
||||
@preflight path /preflight
|
||||
rewrite @preflight /tests/preflight.php
|
||||
|
||||
# Redirect old "home" to root
|
||||
@oldhome path_regexp oldhome ^.*/home$
|
||||
redir @oldhome / 301
|
||||
|
||||
# Previews mapping to actual files
|
||||
@prev_default path /previews/default.mp4
|
||||
rewrite @prev_default /f_data/data_userfiles/user_media/default.mp4
|
||||
|
||||
@prev_stream path_regexp prev_stream ^/previews/s/([^/]+)/([^/]+)\.mp4$
|
||||
rewrite @prev_stream /f_data/data_userfiles/user_media/{re.prev_stream.1}/s/{re.prev_stream.2}.mp4
|
||||
|
||||
@prev_video path_regexp prev_video ^/previews/([^/]+)/([^/]+)\.mp4$
|
||||
rewrite @prev_video /f_data/data_userfiles/user_media/{re.prev_video.1}/v/{re.prev_video.2}.mp4
|
||||
|
||||
# Block sensitive source/template/log files
|
||||
@blocked {
|
||||
path *.inc *.inc.php *.shtml *.cgi *.pl *.py *.asp *.aspx *.sh *.cin *.tpl *.tplb *.log
|
||||
}
|
||||
respond @blocked 403
|
||||
|
||||
# Static cache
|
||||
@static_long {
|
||||
path *.ico *.pdf *.flv *.gif *.jpg *.jpeg *.png *.svg *.webp *.css *.js *.eot *.woff *.otf *.ttf
|
||||
}
|
||||
header @static_long Cache-Control "public, max-age=604800"
|
||||
|
||||
# Finally pass to PHP or serve static
|
||||
php_fastcgi php:9000
|
||||
file_server
|
||||
}
|
||||
respond @blocked 403
|
||||
|
||||
# Static cache
|
||||
@static_long {
|
||||
path *.ico *.pdf *.flv *.gif *.jpg *.jpeg *.png *.svg *.webp *.css *.js *.eot *.woff *.otf *.ttf
|
||||
}
|
||||
header @static_long Cache-Control "public, max-age=604800"
|
||||
|
||||
handle_errors {
|
||||
@notfound expression {http.error.status_code} == 404
|
||||
@@ -100,4 +97,4 @@
|
||||
X-Content-Type-Options "nosniff"
|
||||
Referrer-Policy "strict-origin-when-cross-origin"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user