apache URL 问题

apache URL 问题

我确信有人问过同样的问题,serverfault但我只是不知道要寻找什么。

我学校有两个来自不同主机的子域名。例如。

One is:     tr33house.domain1.school.edu
the other:  tr33house.domain2.school.edu

域名one不支持 python 站点,所以我必须将站点放在域中two,并且需要将所有用户转发到域two,但我想要某种 url 屏蔽,以便用户在重定向到域二时可以在 url 上看到域一的名称。

我可以访问两台机器的.htaccess文件。

谢谢!

答案1

如果为 domain1 服务器启用了 mod_proxy,则可以将该P标志与 mod_rewrite 一起使用:

RewriteRule ^path/that/uses/python/(.*)$ http://tr33house.domain2.school.edu/path/that/has/python/$1 [L,P]

如果有重定向和/或 cookie 需要重写其位置、路径或域,您可以使用mod_proxy 的反向指令

ProxyPassReverse /path/that/uses/python http://tr33house.domain2.school.edu/path/that/has/python

答案2

是否可以将 DNS 条目也指向这个新位置?

如果是这样,您可以这样做,然后在域一所在的主机上的 vhost.conf 中添加一行:

ServerAlias tr33house.domain1.school.edu

Apache 可以在一个 vhost 中处理不同的域名。用户看到的 URL 就是他访问网站的 URL。

请注意。Google 不喜欢在两个不同的 URL 下找到完全相同的内容。

重写的成本肯定会比这更昂贵。

相关内容