2016-11-04 195 views
0

我的主域是subdomain.domain.tld,我想重寫從subdomain1.domain.tld到第一個的所有流量。意思是說如果某人訪問subdomain1.domain.tld/whatever.php,他實際上訪問subdomain.domain.tld/whatever.php,但是,他仍然在瀏覽器的導航欄中顯示subdomain1使用.htaccess重寫子域

我做了一些研究,但我找不到太有希望的東西。

回答

0

你不需要重寫本,其實內部重寫不是單獨的主機之間可能的...

假設兩個「子域」(那些實際上是主機名)是由相同的http服務器你提供服務可以簡單地爲兩臺主機配置相同的DocumentRoot。這樣他們就提供完全相同的文件系統,這顯然意味着將調用相同的腳本。

如果您只是使用虛擬主機的ServerAlias命令,那麼您可能更容易脫身。這顯然是唯一可能的,如果你不需要兩個主機單獨的配置。

只要看看apache http服務器的文檔。這說明,並提供了很好的例子: https://httpd.apache.org/docs/2.4/vhosts/examples.html


如果這兩個主機都的,你可以使用內部代理設置相同的HTTP服務器提供:subdomain1.domain.tld充當subdomain.domain.tld前端代理,所以它只是中繼所有傳入的請求和傳出的響應。這是很容易與ProxyPass的組合和阿帕奇代理模塊提供的ProxyPassReverse規則進行:https://httpd.apache.org/docs/current/mod/mod_proxy.html#proxypassreverse

這種設置甚至可以用,如果兩個HTTP服務器上不同的IP地址,甚至完全獨立的系統運行。

+0

完美的作品,謝謝! – John