2013-06-03 58 views
1

我已在IIS 7中爲特定站點(具有2個綁定)設置了URL重寫。將域指向IIS 7網站的URI,而不更改域

  1. main.mydomain.com
  2. hub.mydomain.com

我還施加一個URL重寫規則,如下所示:

匹配(.*) 然後 的條件下 其中{HTTP_HOST}匹配^hub\.mydomain\.com$

301重定向到

http://main.mydomain.com/hub/home.html 

和工作的,目的是讓hub.mydomain.com直接用戶的http://main.mydomain.com/hub/home.html

一個URI現在我已經被要求改變這一點,以便hub.mydomain.com保留在用戶的瀏覽器地址,但他們顯示正確的/hub/home.html內容。

這是如何實現的?我認爲,顧名思義,URL重寫不再適合?如果是的話,我還能如何做到這一點?

編輯:

main.mydomain.com仍然需要去的網站的根目錄。

+0

不能你剛纔設置的默認頁'/集線器/ home.html'在IIS中的網站。然後,無論瀏覽到「http; // main.mydomain.com」還是「http:// hub.mydomain.com」,瀏覽器都會顯示位於相對路徑「/hub/home.html」中的頁面'因爲這兩個域都映射到IIS中的該站點。 – fourpastmidnight

+0

對不起,我沒有提到我仍然想'main.mydomain.com'去到網站的主頁。 – Pricey

回答

1

在你的問題中,你指出main.mydomain.comhub.mydomain.com綁定到一個網站。

所以,如果你想打誰的hub.mydomain.com用戶與來自http://main.mydomain.com/hub/home.html內容顯示,這相當於讓他們打hub.mydomain.com並shwon從http://hub.mydomain.com/hub/home.html內容。然後

你的規則會去:

<rule name="hub rewrite"> 
    <match url="^/?$" /> 
    <conditions> 
     <add input="{HTTP_HOST}" pattern="^hub\.mydomain\.com$" /> 
    </conditions> 
    <action type="Rewrite" url="hub/home.html" /> 
</rule> 
+0

謝謝你的建議,facepalm時刻。這裏的關鍵是使用重寫而不是重定向和相對路徑。好一個。出於興趣,我在站點菜單上使用了IIS7 Url Rewrite功能。 xml在哪裏應用? – Pricey

+1

它應用於''節中的'web.config'中。很高興幫助! – cheesemacfly

+0

感謝您的回覆。 – Pricey

相關問題