Windows 2012 R2 IIS 8.5.9600.16384 和 Google Go Webservice 並行

Windows 2012 R2 IIS 8.5.9600.16384 和 Google Go Webservice 並行

我的網路介面卡使用三個 IP4 位址:

  • A
  • C

IIS 運行兩個站點:A、B,綁定是

  • A>a:80
  • 乙>乙:80
  • 乙>乙:443

我將 IIS 配置為監聽 a 和 b,如下所示:

  • netsh http add iplisten ipaddress=a:80
  • netsh http add iplisten ipaddress=b:80
  • netsh http add iplisten ipaddress=b:443

指令 netsh http show iplisten 顯示:

  • A

Google Go Web 服務在 IP4 位址上運作:

  • C

情況:此配置在 Windows 2008 R2 上運作良好。在 Windows 2012 R2 上,它似乎首先運行,但重新啟動伺服器後,Google Go Web 服務正在運行,但站點 A 和 B 已停止。不過,我可以手動啟動它們,並且所有三個網站都可以再次運行。

方法1:站點A和B正在運行。現在我停用 Google Go Web 服務並重新啟動該服務。但站點 A 和 B 是仍然停了下來重啟後。

方法2:(Go Webservice仍然被停用)我現在新增全域IP位址0.0.0.0供IIS監聽。所以 netssh http show iplisten 顯示:0.0.0.0, a, b。重新啟動後,站點 A 和 B 仍在運作。然而,監聽 0.0.0.0 確實會阻止 Google Go Web 服務運行,因為他的 IP 和連接埠是現在被阻止由 IIS 提供。

Q:為什麼 IIS 需要 0.0.0.0 IP 位址來啟動網站?對我來說,這看起來像是 Windows Server 2012 R2 中的缺陷。在 IIS8.5 中我還發現了其他缺陷所以我不會感到驚訝 - 例如不能使用字元?不再使用標準網站的命名,這對於我們的某些 ISAPI 模組來說是有問題的(您可以編寫 xy.dll,但不能編寫 xy.dll?start)。我現在該怎麼做才能讓三個網站同時運作?感謝您的支持。

答案1

在系統啟動後使用批次腳本將它們全部啟動就足夠了嗎?也許不是最優雅的解決方案,但它應該有效。

相關內容