我確信有人問過同樣的問題,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 可以在一個虛擬主機中處理不同的網域名稱。用戶隨後看到的 url 就是他造訪該網站所使用的 url。
意識到。 Google 不喜歡在兩個不同的 URL 下找到完全相同的內容。
重寫肯定會比這更昂貴。