共用方式為


ASP.NET Web Pages 簡介 - 使用 WebMatrix 發佈網站

Tom FitzMacken

本教學課程是教學課程集中的最後一部分,這部分會介紹 ASP.NET Web Pages 和 Microsoft WebMatrix。 它討論如何將您的網站發佈至網際網路,讓其他人可以使用它。 它假設您已透過建立 ASP.NET Web Pages 網站的一致性外觀完成一系列工作。

您將瞭解如何使用下列內容發佈您的網站:

  • Microsoft Azure
  • Web 託管公司

關於發佈您的網站

到目前為止,您已在本機電腦上完成所有工作,包括測試您的頁面。 若要執行您的 .cshtml 頁面,您已使用 WebMatrix 內建的網頁伺服器,也就是 IIS Express。 但當然,除了您之外,沒有人可以看到您建立的網站。 若要讓其他人使用您的網站,您必須將其發佈至網際網路。

除非您已經存取公用網頁伺服器,否則發佈代表您必須擁有雲端平臺託管服務提供者的帳戶。 雲端平臺,例如 Microsoft Azure,可為您的應用程式提供隨選基礎結構。 託管服務提供者是一家擁有可公開存取網頁伺服器,且將為您的網站租用空間的公司。 託管服務方案從小型網站的每月幾美元 (甚至免費) ,到用於大量商業網站的每月數百美元。

注意

您可能可以透過用來在家上網的網際網路服務提供者 (ISP) 存取公用網頁伺服器。 不過,您的託管服務提供者必須支援 ASP.NET Web Pages。 許多 ISP 都不行,但總是值得確認一下。

在本教學課程中,我們將提供如何發佈的概觀。 為所有項目提供詳細確切資料並不實用,因為每個託管服務提供者的過程都有點不同。 但是,您將瞭解過程如何運作。

本教學課程包含四個區段:

  1. 設定預設頁面
  2. 發佈 (請選擇下列其中一個)
    a. 將您的網站發佈至 Microsoft Azure
    b. 將您的網站發佈至網頁託管服務公司
  3. 更新即時網站:重新發佈

設定預設頁面

當使用者瀏覽至網站的基底位址時,使用者會看到網站的預設頁面。 例如,當 Default.htm 被設定為位於www.contoso.com的網站預設頁面時,那麼瀏覽至www.contoso.com會和瀏覽至www.contoso.com/Default.htm相同。

目前,您的網站使用 Default.cshtml 為預設頁面。 此頁面可當您的預設頁面,但在本教學課程中,因為您尚未將任何內容新增至該頁面,所以會顯示空白頁面。 開啟 Default.cshtml 並使用下列程式碼來取代內容。

@{
    Layout = "~/_Layout.cshtml";
    Page.Title = "Welcome to Movie site";   
}

<p><a href="~/Movies">Go to movie listing</a></p>

現在您的網站已經可以發佈了。 首先,您將瞭解如何將網站部署至 Azure,以及如何將其部署至網頁託管服務公司。 任一選項都適用於您的網站,您只需要遵循其中一個部署選項。

將您的網站發佈至 Microsoft Azure

本教學課程會先示範如何將網站部署至 Microsoft Azure。 藉由使用 Microsoft 帳戶登入,您可以在 Azure 上建立最多 10 個免費網站。 這些免費網站提供方便的方式來測試您的網站。 您稍後始終可以刪除此範例網站,以避免用完所有免費網站。 只需要幾分鐘的時間,您就可以建立免費試用帳戶。 如需詳細資料,請參閱 Azure 免費試用

在 WebMatrix 功能區中,點擊發佈按鈕。

Web Matrix 功能區的螢幕截圖,其中顯示執行按鈕旁邊以紅色矩形突出顯示的發佈按鈕。

會隨即顯示發佈您的網站對話方塊。 如果您尚未登入 Microsoft 帳戶,對話方塊將會包含開始使用 Azure 連結。 點擊此連結。

發佈您的網站對話方塊的螢幕截圖,其中顯示以紅色矩形突出顯示的開始使用 Windows Azure 選項。

如果您尚未登入 Microsoft 帳戶,在這裡又有機會可以登入。 您必須登入 Microsoft 帳戶,才能在 Azure 上發布您的網站。

Microsoft Windows Azure 登入對話方塊的螢幕截圖,其中顯示 Microsoft 帳戶和組織帳戶登入。

登入您的 Microsoft 帳戶後,對話方塊會包含在 Azure 上建立新網站,或連線到 Azure 上的其中一個現有網站的連結。

發佈您的網站對話方塊的螢幕截圖,其中顯示以紅色矩形突出顯示的建立新網站選項。

選取建立新網站

如果您將專案命名為 WebPagesMovies,網站的預設名稱將會是 webpagesmovies.azurewebsites.net。 此預設名稱非常有可能無法使用,如紅色驚嘆號所示。

在 Windows Azure 上建立網站視窗的螢幕截圖,其中顯示預設名稱無法使用,如紅色驚嘆號所示。

將網站名稱變更為可用的項目,然後選取靠近您位置的位置。

在 Windows Azure 上建立網站視窗的螢幕截圖,其中顯示網站名稱欄位中已變更的網站名稱。

按一下 [確定]

WebMatrix 會執行測試,以判斷伺服器是否與您的網站相容。

Web Matrix 視窗的螢幕截圖,其中顯示一則訊息,指出使用者一選取繼續按鈕後,伺服器測試就會開始。

選取繼續

將顯示相容性測試的結果。

Web Matrix 視窗的螢幕截圖,顯示相容性測試結果,其中以綠色勾號圖示表示成功的項目。

選取繼續

WebMatrix 會顯示將發佈至網站的檔案和資料庫。 因為這是您第一次發佈網站,因此會列出所有檔案。 您可以取消核取尚未準備好要發佈的檔案。 在後續的發佈中,將只會顯示已變更的檔案。 參閱更新即時網站:重新發佈

發佈預覽視窗的螢幕截圖,顯示清單中所有檔案和資料庫,每個項目都有對應的核取方塊。

選取繼續

將網站部署至 Azure 後,會顯示一則訊息,指出部署已完成。

發佈完整訊息的螢幕截圖,指出網站部署成功。

您的網站和資料庫已發佈至 Azure,現在可供大眾使用。 點擊指出發佈已完成訊息中的連結,將看到已部署的網站。 您或具有網際網路存取權的任何人都可以在資料庫中新增或修改記錄。

已部署網站的螢幕截圖,其中顯示以紅色矩形突出顯示的網址列中 URL 。

將您的網站發佈至網頁託管服務公司

如果您決定不發佈至 Azure,您可以改將網站發佈至網頁託管服務公司。

點擊尋找網頁託管服務連結。

發佈您的網站對話方塊的螢幕截圖,其中顯示以紅色矩形突出顯示的尋找網頁託管服務連結。

移至列出支援 ASP.NET 的託管服務提供者的 Microsoft 網站上頁面。

Microsoft 尋找網頁託管服務頁面的螢幕截圖,其中顯示支援 A S P dot Net 的託管服務提供者清單。

現在顯然很難確切知道您長期可能需要的託管服務功能。 以下是幾個需要考慮的事項:

  • WebPagesMovies 網站的目的是,您不需要具有通常會產生額外費用的 SQL Server 個別附加元件。 在您的網站中,您使用的是獨立的 SQL Server Compact Edition。 不過,您可能需要 SQL Server 的存取權,才能進行一些未來的網站工作。 如果您認為自己可能使用,請確定稍後可以新增 SQL Server 功能。
  • 檢查託管服務提供者是否支援 Web Deploy 發佈通訊協定。 您可以使用 FTP 通訊協定進行發佈,但使用 Web Deploy 更方便。

某些網站提供免費試用期。 免費試用是仍在摸索 WebMatrix 和 ASP.NET Web Pages 期間,嘗試發佈與託管服務的好方法。

挑選您喜歡的。 在本教學課程中,我們選了 DiscountASP.NET,因為在我們建立教學課程時,該公司有個促銷,可讓人員免費託管網站幾個月。

注意

本教學課程中對託管服務提供者的選擇不應解讀為認可該公司優於任何其他公司。 但我們必須挑一個來說明,DiscountASP.NET 是支援 ASP.NET Web Pages 和 Web Deploy 通訊協定發佈的許多公司之一。

一般而言,註冊託管服務提供者之後,公司會傳送包含使用者名稱和密碼的電子郵件、網頁伺服器的 URL 等等給您。 如果託管服務公司支援 Web Deploy 通訊協定,他們可能會傳送包含發佈設定的檔案給您,或讓您下載一個檔案。 發佈設定檔案可簡化過程。

當您註冊並準備好發佈時,請點擊 WebMatrix 功能區中的發佈按鈕。 會隨即顯示發佈設定對話方塊。

如果託管服務提供者傳送了發佈設定檔案給您,請點擊匯入發佈設定連結並匯入檔案。 如果您沒有發佈設定檔案,請使用託管服務公司以電子郵件傳送給您的值填入欄位。 以下是當您完成時,發佈設定對話方塊看起來的樣子:

發佈設定對話方塊的螢幕截圖,其中顯示已填入文字欄位的託管服務公司詳細資料。

點擊驗證連嫌。 如果一切正常,對話方塊就會回報已成功連線,這表示它可以與託管服務提供者的伺服器通訊。

驗證連線按鈕的螢幕截圖,其中包含綠色勾號圖示,指出連線成功。

如果發生問題,WebMatrix 會盡最大努力告訴您問題是什麼:

驗證連線按鈕的螢幕截圖,其中包含黃色警告圖示,指出對應至錯誤的錯誤訊息。

點擊儲存以儲存設定。 WebMatrix 提供可執行測試,以確定它可以正確與託管服務網站通訊的功能:

發佈相容性對話方塊的螢幕截圖,其中包含一個訊息,說明網站相容性測試會出現一個選取「是」按鈕以繼續進行的提示。

按一下。 WebMatrix 會將一些樣本檔案上傳至託管服務提供者。 完成相容性測試時,WebMatrix 會回報結果:

發佈相容性測試的螢幕截圖,其中顯示測試結果,以綠色勾號圖示表示成功的項目。

如果您已準備好進行,請繼續並點擊繼續以啟動實際發佈過程。 WebMatrix 會找出您網站中有哪些檔案,也已在託管伺服器上 (現在為無),並提供您發佈過程的預覽:

發佈預覽視窗的螢幕截圖,其中顯示準備發佈至網站的網站檔案清單,以及網站的預覽。

要發佈的檔案清單包含您已建立的網頁,例如 Movies.cshtml。 此清單也包含您已安裝的協助程式檔案、要針對資料庫執行 SQL Server Compact Edition 的檔案等等。 因此,初始發佈過程可能相當可觀。

按一下繼續。 WebMatrix 會將您的檔案複製到託管服務提供者的伺服器。 完成後,會在狀態列中回報結果:

狀態列的螢幕截圖,其中顯示發佈過程成功結束時突出提示的黃色訊息。

若要查看您的即時網站,請點擊狀態列中的連結。 將 Movies 新增至 URL,您會看到您建立的 Movies.cshtml 檔案:

顯示即時網站的螢幕截圖,其中顯示透過變更網址列中以紅色突出提示的 URL 而改變的Movies dot c s h t m l 檔案。

更新即時網站:重新發佈

一旦您將網站發佈至 Azure 或網頁託管服務公司),會有兩個復本:您電腦上的版本和服務提供者的版本。 您可能會想要繼續建立網站 (如果沒有其他任何專案,作為下一個教學課程集的一部分)。 當您這樣做時,您必須重新發佈您的網站,才能將變更從您的電腦複製到服務提供者。 WebMatrix 中的發佈過程可以判斷網站上哪些檔案已變更,並只發佈那些檔案。

若要查看重新發佈的運作方式,請開啟 Movies.cshtml 網站,進行一些小變更,然後儲存檔案。 例如,將標題變更為Movies - Updated

在功能區中,點擊發佈按鈕。 WebMatrix 會決定變更的內容,並顯示將要發佈之檔案的預覽。

發佈預覽對話方塊的螢幕截圖,其中顯示已變更檔案清單中的更新檔案,以及有關覆寫遠端資料庫的訊息。

重要

根據預設,WebMatrix 只會在您第一次發佈網站時發佈您的資料庫 (.sdf 檔案)。 發佈完您的網站且人員與網站互動後,即時網站上的資料庫通常會有網站的實際資料。 您必須非常小心,不要使用您電腦上,通常只包含測試資料的 .sdf 檔案來覆寫即時資料庫。 這就是為什麼您會看到警告發佈將覆寫任何遠程資料庫,以及預設會清除 WebPagesMovies.sdf 核取方塊的原因。

按一下繼續。 WebMatrix 會發佈已變更的檔案,並顯示成功訊息,就像您第一次發佈時一樣。

移至即時網站 (如果仍顯示成功訊息,您可以點擊成功訊息中的連結),並確認您的變更已發佈。

提示

遠端編輯檔案

除了變更您的網站,然後重新發佈外,您也可以直接在 WebMatrix 中遠端編輯檔案。 在此情境中,您會開啟服務提供者上的檔案,而 WebMatrix 會下載一個副本以供您進行編輯。 每次儲存檔案時,WebMatrix 都會將變更傳送至網站。

遠端編輯是能簡單對即時網站進行變更的方式。 不過,您以這種方式所做的變更不會與本機網站中的檔案同步。 若要同步處理本機檔案與遠端網站,您可以下載遠端檔案。 此過程的運作方式非常類似發佈,但反向除外。

我們不會在這裡詳細說明 WebMatrix 的遠端編輯和遠端下載功能。 如果多人必須用不同電腦在同一個網站上工作,這就相當有用。 如需詳細資訊,請參閱 使用 WebMatrix 2 Beta 發佈和編輯遠端網站

其他資源