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,一般只用于内部重定向请求。

我要评论!

想一个你喜欢的昵称。
给一个你的常用邮箱。
想和萌萌哒的TA们说点啥。
  • CMD运行指令 开始→运行→CMD→键入以下命令即可: gpedit.msc—–组策略 sndrec32——-录音机 Nslookup——-IP地址侦测器 explorer——-打开资源管理器 logof...
  • Google Chrome,又称Google浏览器,是一个由Google(谷歌)公司开发的网页浏览器。 该浏览器是基于其他开源软件所撰写,包括WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的界面。 Google Chrome,Google浏览器,追求速度、简约安全的必备浏览器。 ...
  • 背景信息 2018年12月04日,Kubernetes官方发布安全通告,披露了一个Kubernetes API服务器特权提升漏洞CVE-2018-1002105。 漏洞描述: 通过特制请求,未经身份验证的恶意用户可以通过Kubernetes API服务器与后端服务器(例如聚合API服务器和kubel...
  • 是的,没错。在新版本的火狐中为了安全起见,已经默认开启了签名的校验,一开启就导致了很多的第三方软件辅助插件失效或是DEV版本的插件也失效。 怎么解决,那就得调整安全参数。 1、打开火狐,并在新建标签页中输入:“about:config”; 2、接着会提示你安全风险,点击“我保证会小心”; 3、在页面...
  • 原理: ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,既可以用来测试Apache的负载压力,也可以测试nginx、lighthttp、tomcat、IIS等其它Web服务器的压力。 ab命令对发出负载的计算机要求很低,既不会占用很高C...
微信扫一扫即可带走我!