nginx中的try_files指令和location指令

Nginx的配置语法灵活,可控制度非常高,是目前主流的服务器应用之一。

在0.7以后的版本中加入了一个try_files指令,配合命名location,可以部分替代原本常用的rewrite配置方式,提高解析效率。

举个例子:

server {
listen 80;
server_name www.yoursafe.cn;
root /www;
index index.html;
try_files $uri @test;
location @test{
proxy_pass http://127.0.0.1;
}
}

try_files指令:

语法:try_files file ... uri 或 try_files file ... = code
默认值:无
作用域:server|location

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

需要注意的是,只有最后一个参数可以引起一个内部重定向,之前的参数只设置内部URI的指向。最后一个参数是回退URI且必须存在,否则会出现内部500错误。命名的location也可以使用在最后一个参数中。与rewrite指令不同,如果回退URI不是命名的location那么$args不会自动保留,如果你想保留$args,则必须明确声明。

location指令:

语法:location [=|~|~*|^~|@] /uri/ { … }
默认值:无
作用域:server

location指令是用来为匹配的URI进行配置,URI即语法中的"/uri/",可以是字符串或正则表达式。但如果要使用正则表达式,则必须指定前缀。 [@] 即是命名location,一般只用于内部重定向请求。

相关推荐:
很多朋友在问我,为何网上说路由器容易被骇客入侵进行非法活动,但是我家路由是设置了密码的,而且管理页面是指定MAC地址的电脑才能访问的,也改了默认的192.168段,可安全? 我纠结了一下,还是笑了...为 …
A类:10.0.0.0-10.255.255.255 B类:172.16.0.0-172.31.255.255 C类:192.168.0.0-192.168.255.255
WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL 数据库的服务器上架设自己的网志。也可以把WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在GNU通 …
当这个标志被设置为true或不设置该标志时应用程序数据可以备份和恢复,adb调试备份允许恶意攻击者复制应用程序数据。 在AndroidManifest.xml中设置android:allowBackup=\"false\"。
IBM® Security AppScan® 是一个适合安全专家的 Web 应用程序和 Web 服务渗透测试解决方案。 关键收益: 通过使用内置的 Scan Configuration Wizard 快速入门。获得 Web 应用程序和 Web 服务的全面的安全性 …
拿起手机扫一扫即可带走我!