【发布时间】:2013-07-21 19:55:39
【问题描述】:
我想了解 Nginx 的 try_files 指令是如何工作的。 Nginx 正在我的服务器上运行,并提供位于 /usr/share/nginx/html/index.html 的默认页面。
但是,我在/var/www/test/index.html 的文件系统中有一个简单的 HTML 页面。以下配置文件不会导致该文件得到服务。我想了解为什么不这样做,以及我需要进行哪些更改才能提供服务。
这是default.conf的相关部分:
server {
listen 80;
server_name localhost;
root /var/www;
try_files /test/index.html /;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
【问题讨论】:
-
try_files行中的尾随/是什么意思? -
表示回退选项是一个“/”。 “;”前面的字符在那一行。
-
嗯,它需要是一个文件,而不是一个 URI,所以使用 $uri/ 或使用 /index.html
-
$uri/可能也不起作用,因为我们不在一个位置,它在服务器块中,你到底想做什么,所以我可以帮你写它,比如服务@ 987654329@那如果处理不正常呢? -
@Jonah 我认为 try_files 指令的上下文是位置而不是服务器。
标签: nginx