Nginx将根目录设置为子文件夹

Nginx将根目录设置为子文件夹,nginx,nginx-location,Nginx,Nginx Location,使用Nginx,我需要下载文件夹成为我网站的主页,同时仍然允许terms.html页面显示在根目录下。下载文件夹显示带有fancyindex和fancyindex_头指令的文件列表 我这样做了:root/var/www/html/download但我不再有权访问下载文件夹之外的页面,如terms.html nginx是否允许此配置?以下是我的目录结构: www/ /download/ # fancyindex on + home page /account/

使用Nginx,我需要下载文件夹成为我网站的主页,同时仍然允许terms.html页面显示在根目录下。下载文件夹显示带有fancyindex和fancyindex_头指令的文件列表

我这样做了:
root/var/www/html/download
但我不再有权访问下载文件夹之外的页面,如
terms.html

nginx是否允许此配置?以下是我的目录结构:

www/
    /download/  # fancyindex on + home page
    /account/
            /index.php
            /login.php
            /signup.php
    /css/
    /js/
    robots.txt
    terms.html

如果目录结构遵循URI结构,您可能应该在
服务器
级别将
设置为
/var/www/html
,并仅对一个
位置
使用
/var/www/html/download

例如:

server {
    ...
    root /var/www/html;

    location / {
        root /var/www/html/download;
        fancyindex on;
    }
    location /account/ {
        ... # PHP stuff
    }
    location /css/ { }
    location /js/ { }
    location = /robots.txt { }
    location = /terms.html { }

最后四个块可以为空,因为它们继承了周围块的
root
值。有关详细信息,请参阅。

谢谢你,Richard,我理解你的解决方案。我将重新阅读Nginx文档。