aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/auth.rs7
-rw-r--r--src/main.rs9
2 files changed, 14 insertions, 2 deletions
diff --git a/src/auth.rs b/src/auth.rs
index 23ea668..889498e 100644
--- a/src/auth.rs
+++ b/src/auth.rs
@@ -142,9 +142,14 @@ fn build_unauthorized_response(
if log_error_chain {
errors::log_error_chain(error.to_string());
}
+ let return_path = match &req.state().random_route {
+ Some(random_route) => format!("/{}", random_route),
+ None => req.path().to_string(),
+ };
+
renderer::render_error(
&error.to_string(),
- req.path(),
+ &return_path,
None,
None,
req.state().default_color_scheme,
diff --git a/src/main.rs b/src/main.rs
index 4b2118c..f0c23cc 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -266,26 +266,33 @@ fn configure_app(app: App<MiniserveConfig>) -> App<MiniserveConfig> {
})
// Handle directories
.handler(&full_route, s)
+ .default_resource(|r| r.method(Method::GET).f(p404))
} else {
// Handle directories
app.handler(&full_route, s)
+ .default_resource(|r| r.method(Method::GET).f(p404))
}
} else {
// Handle single files
app.resource(&full_route, |r| r.f(listing::file_handler))
+ .default_resource(|r| r.method(Method::GET).f(p404))
}
}
fn p404(req: &HttpRequest<crate::MiniserveConfig>) -> Result<HttpResponse, io::Error> {
let err_404 = ContextualError::RouteNotFoundError(req.uri().to_string());
let default_color_scheme = req.state().default_color_scheme;
+ let return_address = match &req.state().random_route {
+ Some(random_route) => format!("/{}", random_route),
+ None => req.path().to_string(),
+ };
errors::log_error_chain(err_404.to_string());
Ok(actix_web::HttpResponse::NotFound().body(
renderer::render_error(
&err_404.to_string(),
- "/",
+ &return_address,
None,
None,
default_color_scheme,