diff options
author | metamuffin <metamuffin@disroot.org> | 2023-02-24 15:06:21 +0100 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2023-02-24 15:06:21 +0100 |
commit | 975f2325a0ee78f75e0ed2ab899d161868250e8d (patch) | |
tree | e5c410f4000db5234a041b74385c551416f0f654 | |
parent | 08c6eca69ec1aaa85e474e1ed9cbb8856d55d16b (diff) | |
download | gnix-975f2325a0ee78f75e0ed2ab899d161868250e8d.tar gnix-975f2325a0ee78f75e0ed2ab899d161868250e8d.tar.bz2 gnix-975f2325a0ee78f75e0ed2ab899d161868250e8d.tar.zst |
italic file type and hyperlink to source
-rw-r--r-- | src/files.rs | 4 | ||||
-rw-r--r-- | src/proxy.rs | 14 |
2 files changed, 13 insertions, 5 deletions
diff --git a/src/files.rs b/src/files.rs index c30a2bd..888954e 100644 --- a/src/files.rs +++ b/src/files.rs @@ -189,7 +189,7 @@ markup::define! { } } td { @if meta.file_type().is_dir() { - "directory" + i { "directory" } } else { @humansize::format_size(meta.len(), FormatSizeOptions::default()) } @@ -197,7 +197,7 @@ markup::define! { } } } hr; - footer { sub { "served by gnix" } } + footer { sub { "served by" a[href="https://codeberg.org/metamuffin/gnix"] { "gnix" } } } } } } diff --git a/src/proxy.rs b/src/proxy.rs index 65fc5a8..aff1ae5 100644 --- a/src/proxy.rs +++ b/src/proxy.rs @@ -2,7 +2,7 @@ use crate::ServiceError; use http_body_util::{combinators::BoxBody, BodyExt}; use hyper::{ body::Incoming, - header::UPGRADE, + header::{SERVER, UPGRADE}, http::{ uri::{PathAndQuery, Scheme}, HeaderValue, @@ -67,8 +67,16 @@ pub async fn proxy_request( .map_err(ServiceError::Hyper)? }; - resp.headers_mut() - .insert("server", HeaderValue::from_static("gnix")); + let server_header = resp.headers().get(SERVER).cloned(); + resp.headers_mut().insert( + SERVER, + HeaderValue::from_str(&if let Some(o) = server_header { + format!("{} via gnix", o.to_str().unwrap()) + } else { + format!("gnix") + }) + .unwrap(), + ); if do_upgrade { let on_upgrade_upstream = resp.extensions_mut().remove::<OnUpgrade>(); |