2011-05-16 90 views
15

是否有可能为域名例如www.myclient.com有一个完全不同的(我们)服务器上的子目录?子目录到不同的服务器

他们不想让他们想把它当作文件夹www.myclient /子域名指向subdomain.myclient.com我们的服务器/

在此先感谢。

+0

不,除非您准备开始使用myclient.com服务器作为代理。它需要访问Apache配置,将花费大量带宽,但*应该可能以这种方式实现。 – 2011-05-16 15:09:49

+0

甚至没有.htaccess规则'重写规则杂志/(.*)http:// myotherdomain.com/$ 1'? – Lizard 2011-05-16 15:34:19

+0

@Lizard可以工作,但它会将用户重定向到新位置而不是重写URL。新位置将显示在浏览器的地址栏中。 – 2011-05-16 15:34:51

回答

14

正如评论中所述,您唯一的选择是代理。其他所有内容(如mod_rewrite/Alias)将执行标头重定向,并将目标地址公开给用户。

但是,Apache's proxying似乎并不那么复杂。最简单的例子是

ProxyPass /mirror/foo/ http://backend.example.com/ 

请注意,代理当然会增加一倍,你的流量,因为要求每个字节将不得不从远程计算机获取。

+1

这就像一个魅力,它也是非常实用的放在你的虚拟主机上的位置标记 – a1an 2012-10-03 09:52:59

+0

为什么我的主服务器的DNS服务器不能重定向到另一台服务器,并作为代理? – 2015-05-03 16:40:28

+1

@Radenko,但当请求是针对特定的子目录时,你如何告诉DNS服务器指向不同的服务器? DNS服务器甚至没有看到完整的请求URL。 – 2015-05-03 16:53:09

6

您可能可以使用两种不同的机制来完成此操作。您使用的内容取决于您拥有的设置以及托管公司对服务器的权限(如果这不是专用服务器)。

第一个选项是使用文件系统映射到第二个服务器,然后使用mod_alias将子目录指向映射的位置。这要求两台服务器联网在一起,例如,如果您有一台专用于特定服务器的服务器,但拥有并可以安全地在文件系统级联网服务器。

另一种选择是将Apache设置为代理。这确实需要一些高级编程来配置,但可以设置系统,以便将指定子文件夹的请求传递到远程Web服务器。当远程服务器无法在文件系统级联网时,可以使用此功能,但可让您模拟远程子域的工作方式。

+1

+1提到的可能性混淆如果文件共享连接存在,好主意 – 2011-05-16 16:17:35

0

您可以使用Amazon CloudFront吗?因为它可以将不同路径映射到不同服务器?

相关问题