如何将我网站的根 url ('/') 托管在一个托管服务提供商上,而将所有其他 url 托管在另一个托管服务提供商上?

How can I host my website's root url ('/') on one hosting provider and every other url on another?

所以我有一个域 (example.com),我想要根 url

example.com

指向我的登录页面的 DNS,该 DNS 来自其托管服务提供商,我希望所有其他 url

example.com/whatever-here

指向我的主要托管服务提供商,这是一个带有 DNS 的数字海洋。我以前做过,但是有子域。 example.com 部分指向我的着陆点和他们的主机,而以 "app" 子域 (app.example.com) 开头的所有内容都将用户指向我的主主机。现在我想在不引入子域的情况下做到这一点。它是在 Nginx 级别的某个地方完成的吗?或者它是在我的托管服务提供商的设置中配置的吗?暂时找不到答案。

你不能。

主机名表示您的浏览器将连接到的服务器。然后,仅在浏览器连接到该服务器后,请求的路径才会发送到该服务器。

正如@Brad所说,不可能同时在两个不同的DNS上直接托管一个域名。然而,我设法找到了两种不符合我要求的方法,但最终结果几乎相同:

  1. 在一台服务器上托管 www.domain.com,在另一台服务器上托管 domain.com。并非所有提供商都支持它,因此它不是一个保证有效的解决方案。不过还是解决了。

  2. 使用 Nginx 的 proxy-pass 无需重定向或您的网络服务器的类似功能。 这样,您可以 example.com 实际加载其他 site.com 而无需更改浏览器 url。我将提供我的 Nginx 配置以供参考:

location = / {
        include proxy_params;
        proxy_pass http://other-domain-or-ip.com/;
    }

这正是我想要的结果,它让我觉得我成了 X->Y 问题的牺牲品。