在Nginx的根目录下提供额外的目录内容

在Django中使用Nginx,我在我的服务器configuration中有以下位置条目:

location / { include uwsgi_params; uwsgi_pass 127.0.0.1:1234; } 

因此,所有的URL请求都被传递给Django。

现在,我想在根url下添加一些其他文件,例如robots.txtfavicon.ico和其他无限数量的文件。 例如/robots.txt应返回我的robots.txt文件,它位于/var/www/project/misc/ 。 我如何在Nginx中做到这一点? 我似乎无法获得用于捕获根URL“/”的多个位置。

我知道,我可以这样做:

 location /robots.txt { alias /var/www/project/misc/robots.txt; } 

但是,我们正在讨论很多不同的文件,为它们增加一个额外的位置似乎相当笨拙。 如果有一种方法可以简单地提供根URL下的整个目录,那就更好了。

只需将应用程序分解到它自己的@special位置,然后先尝试文件系统。

 location / { root /var/www/project/misc; try_files $uri @wsgiapp; } location @wsgiapp { include uwsgi_params; uwsgi_pass 127.0.0.1:1234; }