我有一個開發機安裝與IIS 6,我有不同的IP地址配置3名網站:如何IIS決定打什麼網站對本地主機
默認(全部未分配) WS1(192.168.1.250) WS2(192.168.1.249)
我想知道當我在URL中指定localhost時,IIS如何確定要點擊哪個站點?這是可配置的嗎?如果是這樣,我該如何去做這件事?
我有一個開發機安裝與IIS 6,我有不同的IP地址配置3名網站:如何IIS決定打什麼網站對本地主機
默認(全部未分配) WS1(192.168.1.250) WS2(192.168.1.249)
我想知道當我在URL中指定localhost時,IIS如何確定要點擊哪個站點?這是可配置的嗎?如果是這樣,我該如何去做這件事?
當IIS響應HTTP請求時,會使用3條信息來確定應該使用哪個網站構建響應。
www.foo.com secure.foo.com server1.foo.com subdomain.foo.com server2.subdomain.foo.com
等,根據你的問題假設:
1 - 您的機分配3個IP地址:
2 - 你有一個分配給你的機器第3的IP地址,該地址是原IP地址。 (這可能也可能不是這種情況,我認爲它是如此,因爲這是大多數人在將IP分配給網站時所做的)。
3 - IIS中的默認網站的IP地址設置爲:(All Unassigned)
。
4 - 您的IIS配置中未指定任何主機頭或端口。
因此,在您的機器上運行瀏覽器時,請鍵入:http://localhost
(無端口號),IIS會做什麼?
根據之前的回覆,瀏覽器將localhost轉換爲127.0.0.1作爲IP地址,併爲該IP地址構造HTTP請求。主機頭將爲localhost
。
在這種情況下,IIS將看到WS1和WS2都沒有匹配的IP地址,因此默認站點將用於處理請求。
如果您希望讓WS1或WS2響應請求,請禁用默認站點,並將WS1或WS2的IP地址設置更改爲(All Unassigned)
。
localhost與127.0.0.1相同,所以我認爲它將歸入全部未分配狀態,因爲它與您的其他IP地址不匹配。
localhost
通常意味着127.0.0.1
,這是一個特殊的IP地址,稱爲Loopback Address
,它始終和無處不在定義爲「當前機器」。它與您的Web服務器的外部IP地址不同:如果IIS預計連接到IP地址192.168.1.250
,則與127.0.0.1
的連接將不匹配。
localhost
可在Hosts
文件中配置(通常位於C:\Windows\System32\Drivers\Etc\Hosts
)。但是不要重新配置它,因爲如果你重新配置它,可能會有很多程序可能會中斷。
相反,您可以在Hosts
文件中設置備用域。例如,你可以做
192.168.1.250 my.internal.website.com
192.168.1.249 your.internal.website.org
,然後如果你瀏覽到這些域之一,IIS會看到正確的IP地址,並顯示你想要的網站。
「localhost」 的映射在
C到127.0.0.1:[Windows目錄] \ SYSTEM32 \ DRIVERS \等\主機
有沒有延長,但主機是可以編輯的文本文件您選擇的文本編輯器。
下面是簡單的解決辦法:
添加綁定到該網站有協議:HTTP,端口:80,沒有通過IIS客戶端的主機名。 inetmgr.exe。
從http://tipila.com/tips/93/configure-a-web-site-to-respond-to-localhost-addresses-in-iis
1,2,3和4是正確的 現在我做到這一點去WS2這是我覺得奇怪的時候。我原以爲它應該去默認網站 – bechbd 2009-06-22 19:36:05