我开发了一个应用程序,它将运行于xyzdomain.com/app
我们专用的托管设置上。我的客户希望该应用程序可以在 上访问clientdomain.com/app
。有哪些选项可以透明地代理或重定向 到 的请求,以便clientdomain.com/app/whatever
为xyzdomain.com/app/whatever
SEO 目的保留原始 URL?换句话说,客户不希望xyzdomain.com/app/whatever
出现在 Google 上,而是希望它显示为clientdomain.com/app/whatever
。
客户端域中的普通框架页面在这里是不可接受的,因为框架页面内的链接仍然会引用xyzdomain.com
。
编辑:听起来我想设置一个反向代理,但设置一个将请求转发到与代理服务器不在同一网络上的另一台服务器的反向代理是否常见甚至合理?这不会导致两倍的延迟和两倍的带宽使用吗?
编辑:伙计们,我知道使用子域名的好处。但这里不可能,因为客户只希望 www.clientdomain.com 出现在搜索结果中。所以,没有子域名建议 - 这不是一个选择。
答案1
我只看到两种方法可以做到这一点。一种是使用您所说的反向代理设置...但是,根据您的描述,我不建议这样做。
另一种解决方案是让客户端上的服务器使用 HTTP 302 回复另一端对应的 URL 的每个请求,但我再次建议不要使用这种设置,因为它需要对每个页面请求进行 2 次 GET,并且还会更改最终用户可见的 URL(在地址栏上)。
您的客户对于像 这样的子域名有什么app.clientdomain.com
看法clientdomain.com/app
?
我的建议是,您尝试与您的客户讨论使用子域名的问题。
希望这可以帮助。
答案2
您将需要在专用托管设置上为 clientdomain.com 设置虚拟服务器。然后问题变成了将请求从 clientdomain.com 透明地代理到专用服务器(通过 IP 地址)。
如果 clientdomain.com 不是专用于应用程序,则使用子域会更简单。这也需要在专用托管设置上有一个主机(虚拟或其他)。
答案3
最简单的解决方案是在 Web 服务器中定义域别名。这与 www.blah.com 与 blah.com 是同一个网站的方法非常相似。
这可以在大多数主流 Web 服务器(例如 IIS 和 Apache)中进行配置。
如果您指定了您的 Web 服务器技术,我可能能够提供一些说明;)