帮酷LOGO
  • 显示原文与译文双语对照的内容
文章标签:翻转  Proxy  Server  代理服务器  Elixir  BASE  反向代理  
A Plug based, reverse proxy server written in Elixir.

  • 源代码名称:elixir-reverse-proxy
  • 源代码网址:http://www.github.com/slogsdon/elixir-reverse-proxy
  • elixir-reverse-proxy源代码文档
  • elixir-reverse-proxy源代码下载
  • Git URL:
    git://www.github.com/slogsdon/elixir-reverse-proxy.git
  • Git Clone代码到本地:
    git clone http://www.github.com/slogsdon/elixir-reverse-proxy
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/slogsdon/elixir-reverse-proxy
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
  • ReverseProxy

    Build StatusCoverage Status

    基于插头的反向代理服务器。

    ReverseProxy 可以作为独立的服务,也可以作为现有应用程序中的插入管道的一部分。

    维基百科:

    在计算机网络中,反向代理是代表来自一个或者多个服务器的客户机检索资源的代理服务器。 这些资源然后被返回给客户端,就好像它们源于代理服务器本身一样。 向前代理作为联系任何服务器的关联客户机的中介,反向代理作为它的联系服务器的中介。

    目标

    • 基于域的代理
    • 基于路径的代理
    • 代理缓存
    • ssl/tls终止

    非目标

    • 替代生产反向代理解决方案

    配置

    :upstreams

    上游服务器可以按以下形式列出每个域:

    • 远程节点列表,比如 ["http://host:4000","http://host:4001"]
    • {plug, options} 元组,适用于umbrella应用程序

    注:当项目进展时,这里结构可能会发生变化。

    config :reverse_proxy,#.. .upstreams: %{ "foobar.localhost"=> ["http://www.example.com"],
     "api."=> ["http://localhost:4000"],
     "slogsdon.com"=> ["http://localhost:4001"] }

    你可能需要创建 foobar.localhost in/etc/hosts` 并使用实际站点替换 example.com 。

    :cache

    启用来自上游服务器的响应缓存。

    注:这里功能还没有生成完成。 当前实现将所有请求视为命中命中。

    config :reverse_proxy,#.. .cache:false

    运行

    plug_adapter =Plug.Adapters.Cowboyoptions = []
    adapter_options = []
    plug_adapter.http ReverseProxy.Router, options, adapter_options

    嵌入

    可以将 ReverseProxy 嵌入到现有的插件应用程序中,以在CORS或者JSONP无法使用的情况下对所需。

    注意:这里功能没有被彻底清除,所以它可以能还没有像描述的那样。

    以下代码利用 Plug.Router.forward/2/google 路径传递请求到 ReverseProxy:

    defmodulePlugReverseProxy.RouterdousePlug.Router plug :match plug :dispatch forward "/google", to:ReverseProxy, upstream: ["google.com"]end

    许可证

    ReverseProxy是在MIT许可证下发布的。

    有关详细信息,请参阅许可证



    文章标签:Server  BASE  Proxy  Elixir  翻转  代理服务器  反向代理  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语