使用Nginx从虚拟目录提供文件

时间:2019-08-05 14:47:57

标签: nginx

如何使用NGINX从位置foo.html提供静态文件(例如/foo)。

我一直在尝试alias,但没有成功。这是我尝试过的:

location /foo {
    alias foo.html;
}

2 个答案:

答案 0 :(得分:1)

aliasroot指令相似,并指定文件或目录的完整路径。有关详细信息,请参见this document

例如:

location /foo {
    alias /path/to/foo.html;
}

您可以使用try_files实现相同的行为。有关详细信息,请参见this document

例如:

root /path/to/root;

location /foo {
    try_files /foo.html =404;
}

答案 1 :(得分:0)

您实际上是从/foo/foo.html 重写URL ,因此rewrite恰好适用于以下情况:

rewrite ^/foo$ /foo.html; 

无需担心正则表达式会变慢-事实并非如此。

考虑到try_files方法必须进行stat调用(检查文件是否存在),这会使其变慢。