项目

常规

个人资料

操作

mod_sockproxy

模块:mod_sockproxy

描述

透明套接字代理 (自 lighttpd 1.4.51 起可用)

选项

lighttpd 的 mod_sockproxy 是一个透明套接字代理。对于给定的 $SERVER["socket"] 配置,连接将被转发到后端,不进行任何协议解释。

mod_sockproxy 配置选项

  • sockproxy.server: 用于发送请求的后端服务器定义;每个后端主机的选项。每个文件扩展名都可以有自己的处理程序。通过为同一个扩展名指定多个主机来完成负载均衡。
  • sockproxy.debug: 调试级别 (值介于 0 和 65535 之间)
  • sockproxy.balance: 可以是 'fair' (默认)、'hash'、'round-robin' 或 'sticky' 之一。
    • 'fair' 或 'least-connection' 是基于负载的常规被动均衡。
    • 'round-robin' 为每个请求选择另一个主机。
    • 'hash' 根据请求 URI 生成哈希值,并确保相同的请求 URI 始终发送到相同的主机。这可以由于更高的缓存局部性而大大提高后端服务器的性能。
    • 'sticky' (自 1.4.44 起) 将来自同一(客户端)IP 的请求发送到同一后端。

sockproxy.server 节的结构

    ( <extension> => 
      ( [ <label> => ]
        ( "host" => <string> ,
          "port" => <integer> ),
        ( "host" => <string> ,
          "port" => <integer> )
      ),
      <extension> => ... 
    )
  • <extension>: 对于 mod_sockproxy,必须是 "/" 或 "" (空)
  • <label>: 可选名称,显示在 mod_status 生成的统计信息中,有助于指示哪个后端处理程序处理了此扩展名。
  • "host": 代理服务器的 IP (自 1.4.46 起,DNS 名称在 lighttpd 启动时解析为第一个 IP)
    (自 1.4.36 起:) 如果主机以 "/" 开头,lighttpd 将尝试连接到 Unix 域套接字
  • "port": “主机”上由 sockproxy 后端服务器使用的 TCP 端口 (默认: 80)

例如

    sockproxy.server = ( "" =>
                         ( ( 
                           "host" => "10.0.0.242",
                           "port" => 10000
                         ) )
                       )

更新者 gstrauss 6 年多前 · 1 次修订