ASP.NET 裝載選項 (VB)

作者 :Scott Mitchell

下載 PDF

ASP.NET Web 應用程式通常是在本機開發環境中設計、建立及測試,而且一旦準備好發行,就必須部署到生產環境。 本教學課程提供部署程式的概觀,並作為本教學課程系列簡介。

簡介

Web 應用程式通常是在開發環境中設計、建立及測試,只有處理網站的程式設計人員才能存取。 應用程式準備好發行之後,就會移至生產環境,讓網際網路上的任何人都可以存取該網站。 此部署程式引進了一些挑戰:

  • 生產環境必須存在且必須正確設定,才能部署 ASP.NET 應用程式;此外,生產環境必須使用最新的安全性修補程式保持最新狀態。
  • 必須將正確的標記檔案、程式碼檔案和支援檔案集合從開發環境複製到生產環境。 對於資料驅動應用程式,這可能需要複製資料庫架構和/或資料。
  • 這兩個環境之間可能有組態差異。 開發環境中所使用的資料庫連接字串或電子郵件伺服器可能會與生產環境不同。 更重要的是,應用程式的行為可能取決於環境。 例如,當開發中發生錯誤時,錯誤的詳細資料可以在畫面上顯示,但在生產環境中發生錯誤時,應該改為顯示使用者易記的錯誤頁面,並將錯誤詳細資料傳送給開發人員。

為了放棄第一項挑戰 - 設定和維護生產環境 - 許多個人和企業將其生產環境外包給 Web 主控提供者。 Web 裝載提供者是代表您管理生產環境的公司。 There are countless web host providers, each with varying prices and service levels; see the "Finding a Web Host Provider" section for tips on locating such a service provider.

這是一系列教學課程中的第一個教學課程,其中探討將 ASP.NET Web 應用程式部署至 Web 主機提供者所管理生產環境所涉及的步驟。 在這些教學課程中,我們將檢查:

  • 哪些檔案需要部署到 Web 主機提供者。
  • 簡化部署程式的工具。
  • 如何部署資料庫。
  • 部署使用 SQL 型成員資格和角色提供者的資料庫,以及模擬生產環境中網站管理工具的方法的秘訣。
  • 在生產環境中順暢地更新資料庫的策略,並在開發期間進行變更。
  • 記錄在生產環境發生的錯誤的技術,以及在發生錯誤時通知開發人員的方法。

這些教學課程旨在簡潔,並提供具有許多螢幕擷取畫面的逐步指示,以視覺化方式引導您完成程式。 本教學課程提供 ASP.NET 部署程式的概觀,以及尋找 Web 裝載提供者的建議。 現在就開始吧!

ASP.NET 部署程式的概觀

簡單地說,部署 ASP.NET 應用程式牽涉到下列三個步驟:

  1. 在生產環境中設定 Web 應用程式、Web 服務器和資料庫。
  2. 同步處理 ASP.NET 頁、程式碼檔案、資料夾中的元件 Bin ,以及 CSS 和 JavaScript 檔案等 HTML 相關支援檔案。
  3. 同步處理資料庫架構和/或資料。

Web 應用程式的組態資訊通常位於 檔案中 Web.config ,且包含資料庫連接字串、錯誤處理準則、URL 重寫規則和電子郵件伺服器資訊。 通常,在開發中的應用程式與生產環境中相同的應用程式而言,這項資訊會有所不同。 例如,開發應用程式時,最好是使用開發資料庫,以便您不會針對生產資料庫進行測試。 因此,資料庫連接字串通常會在開發和生產應用程式之間有所不同。 由於這些差異,部署的一部分牽涉到變更 Web 應用程式的組態資訊。

除了 Web 應用程式組態變更之外,步驟 1 也可能需要 Web 服務器和資料庫的組態。 例如,如果 ASP.NET 網頁從網頁伺服器上的目錄建立或刪除檔案,則必須將網頁伺服器設定為允許這些檔案系統修改。 同樣地,可能有需要對資料庫進行的許可權或驗證設定。

步驟 2 牽涉到同步處理開發和生產環境之間的一組基本 ASP.NET 網頁和支援檔案。 這兩個環境之間需要同步處理的特定一組 ASP.NET 相關檔案,取決於您在 Visual Studio 中建立的專案類型,而且是下一個教學課程中的討論: 決定需要部署哪些檔案。 第三個和第四個教學課程 - 使用 FTP 部署您的網站和使用 Visual Studio 部署您的網站 - 檢查不同的工具和技術,以同步處理這些檔案。

建置資料驅動應用程式時,通常會使用兩個資料庫:一個用於開發,另一個用於生產環境。 在開發期間,開發資料庫的架構可以修改為包含新的資料表、資料行、預存程式和觸發程式,也可以修改以移除或重新命名現有的資料庫物件。 在進行這些變更和應用程式部署至生產環境的時間之間,開發和生產資料庫會不同步。部署程式期間必須修正此非同步。 這些挑戰將會在未來的教學課程中加以檢查。

尋找 Web 主機提供者

ASP.NET 應用程式可以部署到已安裝 .NET Framework 和 Internet Information Services (IIS) 的任何 Web 服務器。 您可以從個人電腦裝載網站,假設您有網際網路的寬頻連線,並知道如何設定路由器以允許連入 Web 要求。 您也可以從內部網路的電腦裝載網站,就像許多公司所做的一樣。 不過,這些教學課程的重點在於使用 Web 主機提供者來裝載您的網站。

注意

IIS 是 Microsoft 的企業級網頁伺服器。 隨附于非家用版 Windows,例如 Windows Server 2008 和特定 Windows Vista 版本。 您不需要在開發環境中安裝 IIS 來提供 ASP.NET 應用程式,因為 Visual Studio 包含 ASP.NET Development Web Server。 不過,ASP.NET 開發網頁伺服器只接受本機連線,因此無法在生產環境中使用。

您必須先決定要與哪些公司合作,才能將網站部署至 Web 主機提供者。 市集中有數個 Web 主控公司;搜尋「Web 主控公司」會傳回超過五百萬個結果。 如何找到適合您的專案? 您最愛的搜尋引擎是不錯的起點,如同 TopHostsHostCritique之類的網站,可比較和對比各種主控服務。 我也會建議詢問同事和同事是否有任何建議;您也可以在這裡的主 控開放論壇 提出建議 ,請參閱 ASP.NET 論壇

Web 主控公司通常會提供共用主控方案和專用主控方案。 共用裝載單一網頁伺服器時,如果沒有數百個不同的網站,則裝載數十個。 使用專用裝載,您會從單獨為您的網站和您的網站提供服務的公司租用電腦。 共用主控方案可能包括支援 ASP.NET 網頁、使用 Microsoft Access 資料庫的能力、5 GB 的磁碟空間,以及每月 $9.95 美元每月頻寬流量的 100 GB。 另一個共用主控方案可能包括支援 ASP.NET 網頁、存取 Microsoft SQL Server 2008 資料庫伺服器、10 GB 的磁碟空間,以及每月 $19.95 美元每月頻寬流量的 250 GB。 專用裝載方案通常成本較高,每月成本為數百美元,但相較于共用裝載選項,可提供更佳的效能和控制。 您選擇的方案取決於您的預算、您的網站收到的流量,以及您預期需要的功能。

選擇 Web 主機提供者時的兩個重要考慮是客戶服務與服務品質。 如果您有問題或設定問題,在收到回應之前,將問題提交至 Web 主機技術服務人員需要多久的時間? 公司的服務有多可靠? 它們經常發生資料庫中斷嗎? 電子郵件伺服器離線的頻率為何? 您隨時可以要求公司提供有關其運作時間的詳細資料,並詢問其客戶服務原則,但更確定的方式是尋求目前和過去客戶的意見反應,您可以透過線上論壇、新聞群組和電子郵件清單伺服器進行。

注意

有些 Web 主控公司將其業務著重于特定技術堆疊,例如 .NET 或 LAMP (L inux、 A pache、 M ySQL 和 P HP) ,因此請確定您選取的公司會裝載 ASP.NET 應用程式。 也請檢查以確定它們支援您用來建置應用程式的 ASP.NET 版本。 如果您要建置資料驅動應用程式,請確定 Web 主機提供您所使用的相同資料庫伺服器和版本。

摘要

ASP.NET Web 應用程式通常是在本機開發環境中設計、建立及測試。 一旦版本準備好發行,就會移至生產環境。 雖然您可以在個人電腦或公司內的伺服器上裝載 ASP.NET 網站,但許多企業和個人選擇將其裝載外包給 Web 主機提供者。

本教學課程系列會檢查將 ASP.NET 應用程式部署至 Web 主機提供者的步驟,探索常見的挑戰。 本教學課程提供 ASP.NET 部署程式的高階概觀,並提供尋找適合 Web 主機提供者的秘訣。 下一個教學課程將探討部署網站時,需要將哪些 ASP.NET 相關檔案複製到生產環境。

快樂的程式設計!

特別感謝...

本教學課程系列是由許多實用的檢閱者所檢閱。 本教學課程的首席檢閱者是 Teresa Murphy。 想要檢閱即將推出的 MSDN 文章嗎? 如果是,請將一行放在 mitchell@4GuysFromRolla.com