webserver_colin_ugo/
lib.rs

1pub mod config;
2pub mod error;
3pub mod http;
4pub mod server;
5pub mod utils;
6
7pub use config::ServerConfig;
8pub use error::ServerError;
9pub use server::WebServer;
10
11use std::path::Path;
12
13pub fn run() {
14    let config_path = "config.toml";
15    
16    let config = if Path::new(config_path).exists() {
17        match ServerConfig::from_file(config_path) {
18            Ok(cfg) => {
19                println!("Configuration chargée depuis {}", config_path);
20                cfg
21            },
22            Err(e) => {
23                println!("Erreur lors du chargement de la configuration: {}. Utilisation de la configuration par défaut.", e);
24                ServerConfig::default()
25            }
26        }
27    } else {
28        println!("Fichier de configuration {} non trouvé. Utilisation de la configuration par défaut.", config_path);
29        ServerConfig::default()
30    };
31    
32    let server = WebServer::new(config);
33    server.run();
34}