📅  最后修改于: 2023-12-03 14:44:35.883000             🧑  作者: Mango
在NGINX配置中,变量是一种非常有用的工具,可以在不同的上下文中存储和传递值。变量可以存储来自客户端请求的信息,也可以在相同或不同的配置块中进行传递和共享。在本文中,将介绍一些NGINX常用的变量以及它们的用途。
以下是一些NGINX常用的变量及其用途。
这些变量存储客户端请求的信息。
$request_method
存储请求方法(GET、POST、PUT等)。
$scheme
存储请求方案(http
或https
)。
$http_user_agent
存储浏览器的用户代理字符串。
$remote_addr
存储客户端的IP地址。
$request_uri
存储请求的URI(Uniform Resource Identifier)。
$query_string
存储请求的查询参数字符串。
这些变量存储有关服务器本身的信息。
$host
存储请求被发送到的服务器的主机名。
$server_name
存储服务器名。
$server_addr
存储服务器IP地址。
$server_port
存储服务器端口号。
这些变量存储有关响应的信息。
$status
存储响应状态码。
这些变量允许执行计算或操作。
$upstream_response_time
存储从上游服务器接收到响应所花费的时间。
$request_time
存储客户端请求的处理时间。
变量可以在配置中的任何位置使用。例如:
location / {
add_header X-Request-Method $request_method;
add_header X-Request-URI $request_uri;
proxy_set_header X-Forwarded-For $remote_addr;
}
在这个示例中,变量$request_method
和$request_uri
用于添加名为X-Request-Method
和X-Request-URI
的HTTP响应头。变量$remote_addr
用于设置HTTP请求头X-Forwarded-For
。
NGINX的变量是存储和传递值的有用工具。它们可以存储客户端请求的信息,也可以在相同或不同的配置块中进行传递和共享。NGINX提供了许多有用的变量,包括客户端请求变量、服务器相关变量和响应变量。变量可以在配置中的任何位置使用,允许执行计算或操作。
参考链接: