Linux

將使用者從以前的子域重定向到新 URL

  • September 3, 2009

我最近上線了一個新網站,校園裡的一個部門將使用者推薦到一個虛擬域。

例如,www.ia.domain.com 將自己偽裝成自己的網站,實際上是 domain.com/ia

我想要做的是將所有訪問 www.ia.domain.com 的人重定向到 domain.com/ia,

以及 www.ia.domain.com/faculty/ => domain.com/ia/faculty/

這是一個新盒子,所以它沒有原始配置。

該站點使用 linux (rhel5) 在 Apache 上執行。

我不熟悉 mod_rewrite。我已經完成了 301 重定向,但我無法以這種方式重定向虛擬子域。

不使用 mod_rewrite 而是使用重定向語句怎麼樣。

#Virtual Host for IA sub web
<VirtualHost *:80>
  ServerName www.ia.domain.com
  ServerAlias <other domain names they want to associate with this directory; ex: ia.domain.com>
  Redirect permanent / http://www.domain.com/ia_new_web_location/
</VirtualHost>

您需要為 www.ia.domain.com 設置基於名稱的虛擬主機

在 virtualhost 配置塊中,以下 mod_rewrite 規則應該可以解決問題:

RewriteRule ^/(.*) http://domain.com/ia/$1 [R]

引用自:https://serverfault.com/questions/58407