From 8cabd8833254654fe812c526f8e216b0df1d622a Mon Sep 17 00:00:00 2001 From: Fijxu Date: Tue, 3 Nov 2026 00:41:53 -0300 Subject: [PATCH] feat: check domain configuration before starting Invidious (#5352) * check domain configuration before starting Invidious * Update src/invidious/config.cr Co-authored-by: Samantaz Fox * better domain missconfiguration checking * improve * rescue --------- Co-authored-by: Samantaz Fox --- src/invidious/config.cr | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/invidious/config.cr b/src/invidious/config.cr index d5e3a7ab6..d2b922196 100644 --- a/src/invidious/config.cr +++ b/src/invidious/config.cr @@ -345,6 +345,30 @@ class Config end end + # Check if the domain configuration is valid + if (domain = config.domain) + if parsed_domain = begin + URI.parse(domain) + rescue ex + puts "Config (Hint): Failed to parse domain. Please check it's value!" + exit(1) + end + if port = parsed_domain.path.to_i? + puts "Config (Hint): Remove the port from your domain: ':#{port}'" + exit(1) + end + if (path_items = parsed_domain.path.split("/")).size > 1 + path = path_items[1..].join("/") + puts "Config (Hint): Remove the path from your domain: '/#{path}'" + exit(1) + end + if scheme = parsed_domain.scheme.presence + puts "Config (Hint): Remove the scheme from your domain: '#{scheme}://'" + exit(1) + end + end + end + return config end end