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

时间:2019-10-14 21:47:26

标签: nginx dns subdirectory

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

我试图隐藏tmhos.church,以便它看起来像是自己的网站,而实际上位于/ ref / tmhos之上。

我发现了这篇文章How to preserve request url with nginx proxy_pass(我认为是闭合的,但不完全是我的问题),并且具有如下所示的nginx配置...但是当我转到tmhos.church时,它转到顶部(但确实将tmhos.church域保留在地址栏中(良好))。如果然后我手动将/ ref / tmhos添加到末尾,它将转到我想成为根目录的页面。我承认我不知道所有代码行都在做什么(例如,“ rewrite”正则表达式),但是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;
    }
}

1 个答案:

答案 0 :(得分:0)

可以请您尝试:

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;
    }
}