nginx重写以及内置变量

11.内置变量
需要重点掌握

常见的内置变量有如下几种:

$args,请求行中的参数
$document_root,此变量等同于当前请求的root指令指定的值,也就是虚拟主机的根目录
$uri,表示不带请求参数的当前URL,$uri不包含主机名。
$document_uri,此变量与$uri含义一样。
$host,IP地址或域名。
$limit_rate,此变量用来设置限制连接的速率。
$request_method,此变量等同于request的method,指定获取请求的方式,通常是"GET"或"POST"。
$remote_addr,此变量表示客户端IP地址。
$remote_port,此变量表示客户端端口。
$remote_user,此变量等同于用户名,由ngx_http_auth_basic_module认证。
$request_filename,此变量表示当前请求的文件的路径名,由root或alias和URI request组合而成。
$request_uri,此变量表示含有参数的完整的初始URI。
$query_string,此变量与$args含义一致。
$server_addr #表示请求的服务器地址。
$server_name,此变量表示请求到达的服务器名。默认是localhost
$server_port,此变量表示请求到达的服务器的端口号。

例子:以http://188.19.236.18:8000/abc?test=123&test2=abc 为例子:其中:

$args: test=123&test2=abc
$uri: /abc
$server_addr: 188.19.236.18
$server_port: 8000
$request_filename: abc
$request_uri: /abc?test=123&test2=abc

例2: http://172.16.213.199:88/test1/test2/test.php , 假定虚拟主机根目录为/var/www/html其中:

$host: 172.16.213.199
$server_port: 88
$request_uri: /test1/test2/test.php
$document_uri: /test1/test2/test.php
$document_root: /var/www/html
$request_filename: /var/www/html/test1/test2/test.php

posted @ 2026-08-19 12:33  快乐的小xie  阅读(5)  评论(0)    收藏  举报