nginx内置变量

nginx内置变量

内置变量存放在  ngx_http_core_module 模块中,变量的命名方式和apache 服务器变量是一致的。总而言之,这些变量代表着客户端请求头的内容,例如$http_user_agent, $http_cookie, 等等。下面是nginx支持的所有内置变量:

$args                    #请求中的参数值,同$document_uri和$query_string。
$arg_name                #请求中的的参数名,即“?”后面的arg_name=arg_value形式的arg_name

$uri                     #请求的URI,可能和最初的值有不同,比如经过重定向之类的。

$request                 #代表客户端的请求地址
$request_filename        #当前连接请求的文件路径,由root或alias指令与URI请求生成
$request_uri             #这个变量等于包含一些客户端请求参数的原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:"/cnphp/test.php?arg=freemouse"
$remote_addr             #客户端地址;

$host                    #优先级:HTTP请求行的主机名>"HOST"请求头字段>符合请求的服务器名
$hostname                #主机名

$http_cookie             #客户端cookie信息
$status                  #HTTP响应代码

 

使用域名测试结果如下:

##############################################################################

http://192.168.1.10/info?a=1&b=2

args :a=1&b=2
query_string :a=1&b=2

document_root :/usr/local/nginx/html

document_uri :/info

uri :/info

remote_addr :192.168.1.10

request :GET /info?a=1&b=2 HTTP/1.1

request_filename :/usr/local/nginx/html/info

request_method :GET

request_uri :/info?a=1&b=2

nginx_version :1.9.3

http_user_agent :Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.104 Safari/537.36

Nginx中的try_files指令:

try_files

语法:try_files file ...uri    或者 try_files file ...= code

作用位置:server location

try_files $uri $uri/  /index.php?q=$uri&$args;

依次按照顺序检查文件是否存在

 其作用是按顺序检查文件是否存在,返回第一个找到的文件或文件夹(结尾加斜线表示为文件夹),如果所有的文件或文件夹都找不到,会进行一个内部重定向到最后一个参数

 

参考文档:https://www.cnblogs.com/luyucheng/p/6148242.html

     https://www.cnblogs.com/voipman/p/5054908.html

     http://luokr.com/p/14

posted @ 2018-01-31 17:41  梦徒  阅读(240)  评论(0编辑  收藏  举报