遠端向 Internet 上的 IIS Web 伺服器發佈 ASP.NET 核心程式

頁面創建日期 :

環境

Windows Server
  • Windows Server 2019
Internet Information Services (IIS)
  • 10.0
ASP.NET Core
  • 5.0
Web Deploy
  • 3.6 日文版

入門

提供有關如何將 ASP.NET 核心程式直接從視覺工作室上載到在 Windows 伺服器上設置的 Internet 資訊服務 (IIS) 的分步說明。

第一次需要在 Windows 伺服器上執行操作,但一旦設置,第二次和以後都可以直接從視覺工作室發佈。

此提示將程式發佈到 Internet 上的伺服器,但出於最低安全預防措施,如果您擔心,我們建議您採取其他措施或採取其他上傳方法。

先決條件

  • 已設置 Windows 伺服器
  • 您已經擁有要上傳的 ASP.NET 核心程式
  • 可通過互聯網或內聯網連接到伺服器

步驟

設定 IIS(Internet 資訊權限服務 )

有關說明,請參閱以下頁面。 除了運行 ASP.NET 核心程式外,IIS 還可用於其他用途。

順便說一下,IIS 安裝程式需要其他設置,但上述連結的提示尚未設置。 稍後可以設置它,因此我將在下一部分中討論它。

在 IIS 中添加管理服務

添加 IIS 的預設設置,因為未設置「管理服務」。

啟動伺服器管理員。

從功能表管理中選擇「添加角色和功能」。

按"下一步"按鈕幾次,直到達到所需的螢幕。

進入「選擇伺服器角色」螢幕後,展開「Web 伺服器 (IIS)」和「管理工具」 然後選中「管理服務」。 (圖表為英語,但相同)

如果未安裝 ASP.NET 4.7,則會出現以下對話框,您可以一起添加它。

然後,按下一步按鈕進行安裝。

打開 IIS 管理員時,可以驗證是否已添加管理服務。

防火牆還會自動允許部署埠。

ASP.NET 核心託管捆綁包安裝

在 Windows 伺服器上運行 ASP.NET 核心所必需的。 安裝後,IIS 可以像傳統的 ASP.NET 應用程式一樣運行。

存取以下頁面: 順便說一下,此提示使用5.0,因此,如果您使用的版本不同,請轉到相應的頁面。

按兩下角的運行時中的連結以下載它,因為有一個適用於Windows的託管捆綁包。

在 Windows 伺服器上運行下載的安裝程式。

選中「我接受許可條款和使用條款」,然後按兩下安裝按鈕。

安裝完成後關閉。

安裝 Web 部署

需要從視覺工作室接收發佈程式。

移至以下連結:

下載。

Windows 伺服器僅下載基本 64 位版本。

在 Windows 伺服器上運行。

按兩下一步"。

選中"我接受許可協定",然後按兩下一步"。

按兩下"完整"。

按兩下安裝按鈕。

安裝完成後,按兩下「完成」 按鈕。

打開 IIS 管理員時,將添加「委派管理服務」。

設置應用程式池

對於 ASP.NET 核心,添加沒有託管代碼的應用程式池,因為 .NET CLR 並不重要。 您可以修改現有的預設應用池。 此設置與 Web 部署沒有直接關係,因此省略詳細資訊。

如果添加了應用程式池,請將其設置為網站。

創建網站

創建網站。 您可以從頭開始創建新網站,也可以使用默認網站。 此提示接受默認網站。 我省略了細節,因為創建網站與 Web 部署沒有直接關係。

創建部署使用者

Windows 帳戶也可以部署,但創建專用部署使用者會增加安全風險。 如果要將其部署到 Windows 帳戶,則不需要設置此專案。

啟動 IIS 管理員。

從左側樹中選擇伺服器,然後在中央「管理」組中打開 IIS 管理員使用者。

按兩下右側的「添加使用者」。

通過輸入部署使用者的名稱和密碼來創建部署使用者。

已添加。

允許部署

您剛剛添加了添加到 IIS 的使用者,因此您需要為每個網站設置許可權。 使用 Windows 管理員帳戶發佈時,不需要此設置。

從左側樹中選擇目標網站,然後打開 IIS 管理器許可權。

從右側的專案,按兩下允許使用者。

由於您指定了這次添加到 IIS 的使用者,因此請檢查 IIS 管理器並按下「選擇」 按鈕。 如果要使用 Windows 帳戶發佈,請選中「視窗」。

將顯示使用者清單,然後選擇它。

選擇後,按下「確定」 按鈕。

添加的狀態。

設置部署

從左側樹中選擇伺服器以打開管理服務。

如果選取「啟用遠端連接」或「Windows 或 IIS 管理器憑據」,則無需執行任何操作。 如果選中「僅 Windows 憑據」以使用 Windows 帳戶發佈,則「確定」。

如果沒有,請選中它。

我認為每個專案都處於無法輸入的狀態,因此請按下右側的「停止」。

選中所需的專案。 完成後,按下右側的「開始」連結。

此螢幕底部有一個設置,以提高安全性,但這次我省略了它,因為首先需要確認可以放置的內容。

從視覺工作室部署程式

返回到工作電腦並啟動視覺工作室以打開 ASP.NET 核心程式。 這一次,我們將發佈一個程式,該程式處於創建新項目的狀態。

右鍵按下項目並選擇「發佈」。

選擇 Web 伺服器 (IIS),然後按下一步。

選擇"Web 部署"。

輸入以下內容:

參數名稱
伺服器 設置 IIS 的伺服器的 IP 位址或 DNS 名稱或功能變數名稱。 您可以在互聯網上或內聯網上指定。
網站名稱 指定要添加到 IIS 的網站的名稱。
目標 URL 空白沒有問題。
使用者名 指定在 IIS 中建立的 Windows 伺服器使用者帳戶或使用者名。
密碼 輸入上述使用者的身份驗證密碼。
保存密碼 如果每次發佈時輸入密碼都比較麻煩,請保存密碼。

如圖所示。

如果創建了多個發佈配置檔,則可以在上面的下拉清單中進行更改,但如果名稱令人困惑,則可以更改它們。

您可以在編輯螢幕上更改精細設置。

從左側選項卡中選擇"設置"。 您無需進行任何特殊更改,但請根據需要更改"配置"、"目標運行時"和"文件發佈選項"。

從左側選項卡中選擇「連接」。 您將看到您鍵入的第一個內容,但請按下下面的"驗證連接"按鈕。

成功連接到發佈目標后,將顯示以下對話框: 選中"為 Visual Studio 的未來會話保存此證書",然後按兩下"我同意"按鈕。 如果保存,則僅顯示此對話方塊。

如果連接驗證右側出現複選標記,則表示連接成功。

順便說一下,如果失敗,請按兩下連結以查看原因,並根據原因採取行動。

最常見的原因是

  • 使用者名和密碼不正確。
  • IIS 端不允許使用者。 調查方法是在 Windows 管理員中部署它。
  • 防火牆不允許「TCP 8172」。 雲(如 Azure)不允許在雲端。
  • 您尚未「完整」安裝 Web 部署工具。
  • IIS 設置不足。 請仔細檢查此提示。

完成後,從解決方案資源管理器→解決方案→專案→發佈配置檔 並設置發佈名稱的」。 pubxml",所以打開。

ProjectPropertyGroup 以下代碼新增到>標記中並儲存:

<AllowUntrustedCertificate>True</AllowUntrustedCertificate>

完成後,使用"發佈"按鈕發佈它。

如果發佈成功,則已完成。 偶爾可能會失敗,因此請再次發佈或驗證連接。

如果您能夠在 Web 瀏覽器中訪問它,並查看 ASP.NET 核心程式是否正常工作,則已完成。

更新歷史記錄

  • 2021/11/12 : 添加說明,因為 .pubxml 需要 AllowUntrustedCertificate 不時