Adding meta
This commit is contained in:
@@ -18,9 +18,9 @@ pub async fn cgi(mut con: util::Connection, path: PathBuf, url: Url) -> Result<(
|
||||
envs.insert("SERVER_PROTOCOL", "GEMINI");
|
||||
let addr = con.peer_addr.ip().to_string();
|
||||
envs.insert("REMOTE_ADDR", &addr);
|
||||
envs.insert("REMOTE_HOST", &addr);
|
||||
let port = con.peer_addr.port().to_string();
|
||||
envs.insert("REMOTE_PORT", &port);
|
||||
// envs.insert("SERVER_PORT", con.cfg.port.clone().to_string());
|
||||
|
||||
if let Some(q) = url.query() {
|
||||
envs.insert("QUERY_STRING", q);
|
||||
@@ -36,9 +36,6 @@ pub async fn cgi(mut con: util::Connection, path: PathBuf, url: Url) -> Result<(
|
||||
return Ok(());
|
||||
}
|
||||
let cmd = String::from_utf8(cmd.stdout).unwrap();
|
||||
// if cmd.starts_with("20") {
|
||||
con.send_raw(cmd).await?;
|
||||
//util::send_body(stream, status::Status::Success, "text/gemini", Some(cmd)).await?;
|
||||
// }
|
||||
return Ok(());
|
||||
}
|
||||
|
||||
12
src/main.rs
12
src/main.rs
@@ -26,6 +26,8 @@ use tokio_rustls::server::TlsStream;
|
||||
use tokio_rustls::TlsAcceptor;
|
||||
use url::Url;
|
||||
use chrono::{DateTime, Utc};
|
||||
use mime_guess;
|
||||
use mime;
|
||||
|
||||
mod cgi;
|
||||
mod config;
|
||||
@@ -114,10 +116,18 @@ async fn handle_connection(mut con: util::Connection) -> Result<(), io::Error> {
|
||||
return Ok(());
|
||||
}
|
||||
|
||||
let mut mime = "text/gemini";
|
||||
let m: mime::Mime;
|
||||
|
||||
if path.extension().unwrap().to_str() != Some("gemini") {
|
||||
m = mime_guess::from_path(&path).first().unwrap();
|
||||
mime = m.essence_str();
|
||||
}
|
||||
|
||||
let content = get_content(path, url)?;
|
||||
con.send_body(
|
||||
status::Status::Success,
|
||||
"text/gemini",
|
||||
mime,
|
||||
Some(content),
|
||||
)
|
||||
.await?;
|
||||
|
||||
Reference in New Issue
Block a user