• 虚拟主机
  • 返回

    虚拟主机

    虚拟主机是路由配置中的顶层配置。每个虚拟主机都有一个逻辑名称以及一组域列表,会根据传入请求的主机头路由到对应的域。这允许为单个监听器配置多个顶级域的路径树。一旦基于域选择了虚拟主机,就会进行路由处理,以便查找并路由到相应上游集群或者是否执行重定向。

    1. {
    2. "name": "...",
    3. "domains": [],
    4. "routes": [],
    5. "require_ssl": "...",
    6. "virtual_clusters": [],
    7. "rate_limits": [],
    8. "request_headers_to_add": []
    9. }
    • name

      (required, string) 虚拟主机的逻辑名称。这在发送某些统计信息时使用,但与转发无关。默认情况下,名称的最大长度限制为60个字符。可通过--max-obj-name-len命令行参数设置为所需的值,以提高此限制。

    • domains

      (required, array) 将与此虚拟主机相匹配的域(主机/机构头)的列表。支持通配符匹配主机,如“.foo.com”或“-bar.foo.com”。请注意,通配符不匹配空字符串。例如“-bar.foo.com”将匹配“baz-bar.foo.com”,但不匹配“-bar.foo.com”。另外,允许一个特殊的“”匹配任何主机/机构头。整个路由配置中只有一台虚拟主机可以匹配“*”。域名在所有虚拟主机中必须是唯一的,否则配置将无法加载。

    • routes

      (required, array) 路由列表,将按配置顺序匹配传入请求。第一条匹配的路由将被使用。

    • cors

      (optional, object) 指定虚拟主机的CORS策略。

    • require_ssl

      (optional, string) 指定虚拟主机所期望的TLS认证的配置类型。可能的值有:

      • all

        所有请求都必须使用TLS。如果请求不使用TLS,则会发送302重定向,通知客户端使用HTTPS。
      • external_only

        来自外部请求必须使用TLS。如果请求是来自外部的,并且它没有使用TLS,则会发送302重定向,通知客户端使用HTTPS。

        如果未指定此选项,则虚拟主机没有TLS要求。

    • virtual_clusters

      (optional, array) 为此虚拟主机定义的虚拟集群列表。虚拟集群用于进行其他统计信息收集。

    • rate_limits

      (optional, array) 应用于虚拟主机的一组速率限制配置。

    • request_headers_to_add

      (optional, array) 指定此虚拟主机要添加到每个请求的HTTP头部列表。以下面的形式指定:

      1. [
      2. {"key": "header1", "value": "value1"},
      3. {"key": "header2", "value": "value2"}
      4. ]

      有关更多信息,请参阅自定义请求头部的文档。

    返回

    • 上一级
    • 首页目录