執行基本 IIS 網路伺服器

您可以控制 Compute Engine 中的虛擬機器 (VM) 執行個體,做法與控制任何標準 Windows 伺服器相同。本教學課程說明如何部署簡易的 IIS 網路伺服器,瞭解在 VM 上執行網路伺服器的基本概念。

事前準備

需具有一個允許 HTTP 流量的新 Windows 執行個體。

  • 請按照快速入門導覽課程中的操作說明,建立新的 Windows 執行個體,並透過遠端桌面協定連線至該執行個體。

安裝 IIS

  1. 在 Windows 工作列的搜尋欄位中輸入 PowerShell,然後按下 Enter。如果工作列上沒有搜尋欄位,請按一下搜尋圖示,輸入 PowerShell,然後按 Enter。如果工作列上沒有搜尋欄和搜尋圖示,請參閱這篇文章,瞭解如何在 Windows 中隱藏及取消隱藏搜尋方塊。

  2. 在搜尋結果的「應用程式」下方,以滑鼠右鍵按一下「Windows PowerShell」,然後選擇「以系統管理員身分執行」

  3. 使用下列指令安裝 IIS 服務:

    import-module servermanager
    
    add-windowsfeature web-server -includeallsubfeature
    
  4. 使用以下指令覆寫 IIS 網路伺服器預設網頁:

    echo '<!doctype html><html><body><h1>Hello World!</h1></body></html>' > C:\inetpub\wwwroot\index.html
    

測試伺服器

測試執行個體是否是以外部 IP 供應流量:

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面

    前往 VM 執行個體

  2. 複製「External IP」(外部 IP) 欄中的 IP 位址,並將其貼到新的瀏覽器分頁中,藉此查看 Hello World! 頁面。如果找不到「Hello World!」頁面,請按照疑難排解步驟操作。

清除所用資源

測試完成後,請按照 快速入門中的清除操作說明進行,以免此執行個體產生費用。

疑難排解

收到 Connection Refused 錯誤

如果您看到 Connection Refused 錯誤,原因可能如下:

  • 您的 VM 執行個體無法公開存取,因為防火牆規則或標記設定出現下列的其中一種錯誤:

    • VM 執行個體沒有正確的標記,而未允許 Compute Engine 將適當的防火牆規則套用至執行個體。
    • 您的專案並未設下防火牆規則,而未允許流量進入執行個體的外部 IP 位址。
  • 您正嘗試使用 https 位址存取 VM。檢查您的網址,確認是 http://[EXTERNAL_IP],而非 https://[EXTERNAL_IP]

如何確認 VM 執行個體是否具有正確標記:

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面

    前往 VM 執行個體

  2. 按一下您想連線的執行個體名稱。
  3. 按一下頁面頂端的 [Edit] (編輯)
  4. 向下捲動至「Firewalls」(防火牆),確認已勾選 [Allow HTTP traffic] (允許 HTTP 流量) 方塊。如果沒有,請勾選方塊。
  5. 儲存變更。如此即可確保 VM 執行個體加上正確標記。

如何確認是否已設置正確的防火牆規則:

  1. 在 Google Cloud 控制台中,前往「Firewall rules」(防火牆規則) 頁面。

    前往「Firewall rules」(防火牆規則)

  2. 尋找允許所有 IP 範圍透過 tcp:80 通訊的防火牆規則。此規則的名稱通常為 default-allow-http 規則。
  3. 如果沒有,請建立一項規則。
    1. 按一下「Create firewall rule」(建立防火牆規則)
    2. 輸入規則的名稱,例如 default-allow-http
    3. 在「Source IP ranges」(來源 IP 範圍) 下方輸入 0.0.0.0/0,允許來自所有來源的流量。
    4. 在「Protocols and ports」(通訊協定與通訊埠) 下方,選取 [Specified protocols and ports] (指定的通訊協定與通訊埠) 然後輸入 tcp:80
    5. 建立防火牆規則。

前往執行個體的外部 IP 位址,再次測試伺服器:

http://[EXTERNAL_IP]