1
0
mirror of https://github.com/actix/actix-website synced 2025-02-11 23:59:38 +01:00

26 lines
814 B
Rust
Raw Normal View History

2019-06-17 18:31:10 -04:00
// <main>
use actix_web::{web, App, HttpRequest, HttpServer, Responder};
use openssl::ssl::{SslAcceptor, SslFiletype, SslMethod};
fn index(_req: HttpRequest) -> impl Responder {
"Hello."
}
fn main() {
// load ssl keys
2019-06-18 17:17:43 -04:00
// to create a self-signed temporary cert for testing:
// `openssl req -x509 -newkey rsa:4096 -nodes -keyout key.pem -out cert.pem -days 365 -subj '/CN=localhost'`
2019-06-17 18:31:10 -04:00
let mut builder = SslAcceptor::mozilla_intermediate(SslMethod::tls()).unwrap();
builder
.set_private_key_file("key.pem", SslFiletype::PEM)
.unwrap();
builder.set_certificate_chain_file("cert.pem").unwrap();
HttpServer::new(|| App::new().route("/", web::get().to(index)))
.bind_ssl("127.0.0.1:8088", builder)
2019-06-18 17:17:43 -04:00
.unwrap()
.run()
2019-06-17 18:31:10 -04:00
.unwrap();
}
// </main>