为什么nginx将位置上下文路径作为前缀添加到根位置?

我在nginx的“sites-available”文件夹中有一个简单的默认网站配置,如下所示.

当我尝试浏览到/ hello时,我希望它能够提供位于我指定的根文件夹中的index.html文件.相反,它试图在我指定的根位置内获取/hello/index.html.

有没有办法告诉nginx在没有前缀上下文路径的情况下提供文件?

root /var/...;

location / {
    ...
}

location /hello/ {
    root /home/vagrant/public_html/project/dist;
}
最佳答案
使用别名而不是root;引用http://nginx.org/en/docs/http/ngx_http_core_module.html#alias

For example, with the following configuration

location /i/ {
    alias /data/w3/images/;
}

on request of “/i/top.gif”, the file /data/w3/images/top.gif will be sent.

转载注明原文:为什么nginx将位置上下文路径作为前缀添加到根位置? - 代码日志