我有一個帶有兩個子站點的 Ruby on Rails 應用程序,www.example.com/site1
以及www.example.com/site2
.出於演示目的,我們需要停用site2
並僅顯示site1
。所以我在我的 apache 虛擬主機配置中做了一些重定向,如下所示
Redirect 301 http://www.example.com/site2 http://www.example.com/site1
Redirect 301 http://www.example.com http://www.example.com/site1
確保始終重定向到site1
.現在,如果我們可以site1
從 url 中刪除 ,http://www.example.com/site1
以便它只顯示http://www.example.com
,但也可以處理子網站(例如,「原始」網站是http://www.example.com/site1/cat1
並且應該顯示為http://www.example.com/cat1
),那就太好了。
- 使用 apache 的重寫引擎可以嗎?如何?
- 我不確定是否必須更改應用程式內的某些內容,或者請求 URL(我的路由器拾取的)是否未被 apache 修改?
- 另一種解決方案是僅在使用者網址列中顯示網域。這可能嗎?
答案1
這聽起來更像是您應該將 www.example.com 的 DocumentRoot 更改為site1
目錄,而不是現在的目錄。這消除了您引用的所有三個範例中重定向的需要。