1
0
mirror of https://github.com/actix/examples synced 2025-02-08 20:06:07 +01:00
2022-02-18 02:22:58 +00:00

26 lines
1.1 KiB
Rust

use actix_files::Files;
use actix_web::{middleware::Logger, App, HttpServer};
#[actix_web::main]
async fn main() -> std::io::Result<()> {
env_logger::init_from_env(env_logger::Env::new().default_filter_or("info"));
log::info!("starting HTTP server at http://localhost:8080");
HttpServer::new(|| {
App::new()
// We allow the visitor to see an index of the images at `/images`.
.service(Files::new("/images", "static/images/").show_files_listing())
// Serve a tree of static files at the web root and specify the index file.
// Note that the root path should always be defined as the last item. The paths are
// resolved in the order they are defined. If this would be placed before the `/images`
// path then the service for the static images would never be reached.
.service(Files::new("/", "./static/root/").index_file("index.html"))
// Enable the logger.
.wrap(Logger::default())
})
.bind(("127.0.0.1", 8080))?
.run()
.await
}