try_files 解读
时间: 2023-07-03 16:05:12 浏览: 131
`try_files` 指令是 Nginx 中用于指定在文件系统中查找文件并返回给客户端的指令。它的语法如下:
```
try_files file1 [file2 ...] fallback;
```
其中,`file1`、`file2` 等表示要查找的文件路径,多个文件之间用空格分隔;`fallback` 表示当所有 `file` 都不存在时,返回的文件路径或 URI。
`try_files` 指令的工作原理是:按照给定的顺序依次查找 `file` 文件,如果找到则返回该文件,否则返回 `fallback` 指定的文件或 URI。
常见的使用场景是:当客户端请求一个静态文件时,可以使用 `try_files` 指令指定多个备选文件路径,例如:
```
location / {
try_files $uri $uri/ /index.html;
}
```
这个例子中,当客户端请求一个静态文件时,Nginx 会按照顺序查找 `$uri` 文件、`$uri/` 目录下的 `index.html` 文件,如果都不存在,则返回 `index.html` 的内容。这个配置可以用于实现前端单页应用(SPA)的路由功能。
除了指定文件路径外,`try_files` 还可以指定变量,例如:
```
location / {
try_files $uri $uri/ @backend;
}
location @backend {
proxy_pass http://backend;
}
```
这个例子中,当客户端请求一个静态文件时,Nginx 会按照顺序查找 `$uri` 文件、`$uri/` 目录下的文件,如果都不存在,则将请求转发到名为 `backend` 的后端服务器。
阅读全文
相关推荐


















