尝试在子文件夹下使用Nginx根目录域

尝试在子文件夹下使用Nginx根目录域,nginx,dns,subdirectory,Nginx,Dns,Subdirectory,我有一个域名tmhos.church和一个简单的index.html,位于cosmoscomputers.com:3597/ref/tmhos。(它们位于同一个数字海洋液滴服务器&dns上) 我试图隐藏tmhos.church,使其看起来像是自己的网站,而实际上位于上面的/ref/tmhos 我找到了这篇文章(我想已经结束了,但不完全是我的问题),并且有一个如下所示的nginx配置。。。但是当我进入tmhos.church时,它会出现在cosmoscomputers.com的顶部(但是会在地址栏

我有一个域名tmhos.church和一个简单的index.html,位于cosmoscomputers.com:3597/ref/tmhos。(它们位于同一个数字海洋液滴服务器&dns上)

我试图隐藏tmhos.church,使其看起来像是自己的网站,而实际上位于上面的/ref/tmhos

我找到了这篇文章(我想已经结束了,但不完全是我的问题),并且有一个如下所示的nginx配置。。。但是当我进入tmhos.church时,它会出现在cosmoscomputers.com的顶部(但是会在地址栏中保留tmhos.church域(好))。如果我随后手动将/ref/tmhos添加到末尾,它将转到我希望成为根的页面。我承认我不知道所有的行都在做什么(例如“重写”regex),但是proxy_pass并不是我想要的

server {
    listen 80;
    listen [::]:80;

    server_name tmhos.church www.tmhos.church;

    location / {

        rewrite            ^(.*)$   "://$http_host$uri$is_args$args";
        rewrite            ^(.*)$   "http$uri$is_args$args" break;
        proxy_set_header   Host     $host;

        proxy_pass http://138.197.133.227:3597/ref/tmhos;

    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}
请你试试:

server {
    listen 80;
    listen [::]:80;

    server_name tmhos.church www.tmhos.church;

    location / {
        proxy_set_header Host $host;
        proxy_pass http://cosmoscomputers.com:3597/ref/tmhos/;
    }

    location ~ /\.ht {
        deny all;
    }
}

令人惊讶的是,结尾的斜杠。。。它起作用了!对而且你的配置中还有很多其他东西对我来说毫无意义。它是否如预期的那样工作?完美地,在迄今为止的所有测试中。。。谢谢!如果一切正常,请务必接受正确答案,谢谢!是的,我想。。。不知道该怎么做。。。我甚至试过投票,但我还没有足够的积分。尝试了“回答你的问题”按钮,但它留下了一个字段供我回答(不接受你的)。。。你知道怎么做吗?