参照官网的文档:http://nginx.org/en/docs/http/ngx_http_core_module.html#try_files
Nginx的配置语法灵活,可控制度非常高。
在0.7以后的版本中加入了一个try_files指令,配合命名location,可以部分替代原本常用的rewrite配置方式,提高解析效率。
1、try_files指令介绍
语法:try_files file ... uri(格式1) 或 try_files file ... = code(格式2)
默认值:无
作用域:server location
解释说明:
- 按指定的file顺序查找存在的文件,并使用第一个找到的文件进行请求处理;
- 查找路径是按照给定的root或alias为根路径来查找的;
- 如果给出的file都没有匹配到,则会进行一个内部重定向到最后一个参数给定的uri,就是新的location匹配;
- 只有最后一个参数可以引起一个内部重定向,之前的参数只设置内部URI的指向;
- 最后一个参数是回退URI且必须存在,否则会出现内部500错误;
- 如果是(格式2),若最后一个参数是 = 404 ,若给出的file都没有匹配到,则最后返回404的响应码。
2、举例说明
例1:
- root 后面的参数是前端vue项目贷吗安装目录;
- try_files 负责扫描内部目录然后再进行内部重定向;
- expires 是nginx控制缓存的一种方式,7d=7天。
location / {