#iron #vhost

iron_vhosts

允许根据主机路由请求的 Iron 扩展。

5 个版本 (3 个破坏性更新)

使用旧的 Rust 2015

0.5.0 2017年1月19日
0.4.1 2016年12月26日
0.4.0 2016年12月11日
0.2.0 2016年5月27日
0.1.0 2015年5月5日

#1207 in HTTP 服务器

自定义许可证

4KB

Iron Vhosts

Iron Web 框架的 Vhost 处理器。

示例

extern crate iron;
extern crate iron_vhosts;

use iron::prelude::*;
use iron::status;
use iron_vhosts::Vhosts;

fn main () {
    //Default handler passed to new
    let mut vhosts = Vhosts::new(|_: &mut Request| Ok(Response::with((status::Ok, "vhost"))));
    
    //Add any host specific handlers
    vhosts.add_host("localhost", localhost_handler);
    vhosts.add_host("media.localhost", media_handler);
    
    fn localhost_handler(_: &mut Request) -> IronResult<Response> {
        Ok(Response::with((status::Ok, "localhost")))
    }

    fn media_handler(_: &mut Request) -> IronResult<Response> {
        Ok(Response::with((status::Ok, "media")))
    }

    Iron::new(vhosts).http("localhost:3000").unwrap();
}

安装

如果你使用 cargo,只需将 iron_vhosts 添加到你的 Cargo.toml

[dependencies]

iron_vhosts = "*"

依赖项

~4.5MB
~113K SLoC