From b1d1fb7c0dff6df20beb3751536c59ada1150d1d Mon Sep 17 00:00:00 2001 From: Emi Tatsuo Date: Sat, 5 Dec 2020 13:01:45 -0500 Subject: [PATCH] Warn the first time a request is missing SCRIPT_PATH --- src/types/request.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/types/request.rs b/src/types/request.rs index 9fd5586..7739b1a 100644 --- a/src/types/request.rs +++ b/src/types/request.rs @@ -67,6 +67,21 @@ impl Request { .cloned() ); + // Send out a warning if the server did not specify a SCRIPT_PATH. + // This should only be done once to avoid spaming log files + #[cfg(feature = "scgi_srv")] + if script_path.is_none() { + static WARN: std::sync::Once = std::sync::Once::new(); + WARN.call_once(|| + warn!(concat!( + "The SCGI server did not send a SCRIPT_PATH, indicating that it", + " doesn't comply with Gemini's SCGI spec. This will cause a problem", + " if the app needs to rewrite a URL. Please consult the proxy server", + " to identify why this is." + )) + ) + } + uri.normalize(); let input = match uri.query().filter(|q| !q.is_empty()) {