$proxy_internal_host
$proxy_internal_host 返回请求的内部代理主机名。 — NGINX Core (HTTP)
$proxy_internal_host
NGINX Core (HTTP)
说明
$proxy_internal_host 变量在 NGINX 中主要用于将请求代理到内部位置的配置中。它的作用是保存并返回通常由服务器内部网络设置确定的内部(或后端)主机名。该变量在涉及负载均衡或反向代理的场景中特别有用,因为多个上游服务器可能处理传入请求。根据上下文,该变量将被设置为代理配置中指定的内部主机名;如果未明确定义,则默认为服务器的主机名。 $proxy_internal_host 在处理被 proxy 相关指令(例如 proxy_pass)修改的请求时进行求值。如果定义了 proxy_name,则该名称将用作该变量的值。如果未定义内部主机名,则可能回退到 NGINX 配置规定的默认行为。这可确保请求根据明确的配置或内部默认值正确路由。 这允许基于 $proxy_internal_host 变量做出决策的高级配置,从而启用和管理基于内部主机名的内部路由策略或安全检查。它还可以增强日志记录和调试过程,方便管理员更直观地检查内部代理设置。
配置示例
location /api {
proxy_pass http://backend_server;
proxy_set_header Host $proxy_internal_host;
}子系统
http可缓存
否上下文
http, server, location⚠
确保在代理配置中正确设置内部主机名,以避免出现意外行为。
⚠
$proxy_internal_host 在代理上下文之外使用时可能无法按预期运行,因为它依赖于被代理的请求被定义。
⚠
请记住,该变量不包含端口信息;如有需要,必须单独处理。