1
0
mirror of https://github.com/fafhrd91/actix-web synced 2025-08-31 08:57:00 +02:00

files: Fix redirect_to_slash_directory() when used with show_files_listing() (#2225)

This commit is contained in:
Ali MJ Al-Nasrawy
2021-05-26 12:42:29 +03:00
committed by GitHub
parent 3847429d00
commit e5b713b04a
3 changed files with 29 additions and 11 deletions

View File

@@ -89,17 +89,20 @@ impl Service<ServiceRequest> for FilesService {
}
if path.is_dir() {
if self.redirect_to_slash
&& !req.path().ends_with('/')
&& (self.index.is_some() || self.show_index)
{
let redirect_to = format!("{}/", req.path());
return Box::pin(ok(req.into_response(
HttpResponse::Found()
.insert_header((header::LOCATION, redirect_to))
.finish(),
)));
}
if let Some(ref redir_index) = self.index {
if self.redirect_to_slash && !req.path().ends_with('/') {
let redirect_to = format!("{}/", req.path());
return Box::pin(ok(req.into_response(
HttpResponse::Found()
.insert_header((header::LOCATION, redirect_to))
.finish(),
)));
}
let path = path.join(redir_index);
match NamedFile::open(path) {