根据$uri
是否是/
结尾,拼接相应文本,最后返回相应的文件
location / {
set $t $uri".html";
if ($uri ~ /$) {
set $t $uri'index.html';
}
root /var/tmp/xxx;
try_files $t =404;
}
就是不知如何在set中使用变量+文本.
当然如果有其他方法实现该需求也可以推荐一下.
根据$uri
是否是/
结尾,拼接相应文本,最后返回相应的文件
location / {
set $t $uri".html";
if ($uri ~ /$) {
set $t $uri'index.html';
}
root /var/tmp/xxx;
try_files $t =404;
}
就是不知如何在set中使用变量+文本.
当然如果有其他方法实现该需求也可以推荐一下.
2 回答951 阅读
1 回答720 阅读✓ 已解决
1 回答604 阅读
650 阅读
不过又出现另一个问题:
$uri
是/
结尾时,比如/a/
且文件/var/tmp/xxx/a/index.html
也存在,但nginx却返回了404.原因是try_files受index directive的影响: