summaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/main.rs b/src/main.rs
index a72ec5f..74f0a0b 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -3,10 +3,10 @@ use axum::{
http::{Request, StatusCode},
middleware::{self, Next},
response::Response,
- RequestExt, Router,
+ RequestExt, Router, extract::DefaultBodyLimit,
};
use axum_client_ip::ClientIp;
-use std::{net::SocketAddr, process::exit};
+use std::{net::SocketAddr, process::exit, fs};
use tower_cookies::CookieManagerLayer;
use tracing::{error, info, metadata::LevelFilter};
use tracing_subscriber::{
@@ -14,7 +14,7 @@ use tracing_subscriber::{
};
use types::http::ResponseCode;
-use crate::api::pages;
+use crate::api::{pages, image};
mod admin;
mod api;
@@ -69,13 +69,19 @@ async fn main() {
exit(1)
};
+ fs::create_dir_all("./public/image/custom").expect("Coudn't make custom data directory");
+ fs::create_dir_all("./public/image/custom/avatar").expect("Coudn't make custom avatar directory");
+ fs::create_dir_all("./public/image/custom/banner").expect("Coudn't make custom banner directory");
+
let app = Router::new()
.fallback(not_found)
.layer(middleware::from_fn(log))
.layer(middleware::from_fn(serve))
.nest("/", pages::router())
.nest("/api", api::router())
- .layer(CookieManagerLayer::new());
+ .nest("/image", image::router())
+ .layer(CookieManagerLayer::new())
+ .layer(DefaultBodyLimit::max(512_000));
let Ok(addr) = "[::]:8080".parse::<std::net::SocketAddr>() else {
error!("Failed to parse port binding");