運用 FTP 上傳檔案至 Windows Azure Web Sites

Windows Azure Web Sites 也是 Windows Azure 2012 Spring Release 中一項新的預覽功能,對於單純開發網頁應用程式搭配資料庫的應用,Windows Azure Web Sites 已經足以應付。Windows Azure Web Sites 可以單純上傳修改某一個網頁中所用到的檔案,而無須如 Windows Azure Cloud Services 般以虛擬機器為單位做全面性的更新,而在面對多個執行個體 (instance) 狀況下的 Web 應用程式更新,也不像使用 Windows Azure Virtual Machines 時需要思考如何不停機更新 Web 應用程式,對於不需要複雜虛擬機器設定與多層式架構的一般 Web 應用而言,Windows Azure Web Sites 是一個不錯的選擇。接下來示範如何設定 FTP 讓開發人員或網頁設計人員上傳檔案至 Windows Azure Web Sites。首先在 Windows Azure Management Portal 選取左方的 Web SItes 並按下下方的 "+" 按鈕準備新增一個新的 Web Site。

WebSiteFTP1

依照如下畫面選取 Quick Create ,並鍵入此網頁的 URL,請記得目前 Windows Azure Web Sites 分為兩種模式,分別為共用模式 (Share) 與保留 (Reserve) 模式,共用模式提供了十個免費網站的優惠,但必須與其他用戶共享伺服器資源與 I/O,並且不能透過 DNS CNAME 來指向自己單位的 Domain Name,較適合個人應用。而保留模式就擁有自己獨享的硬體資源,也允許透過 DNS CNAME 來指向自己單位的 Domain Name,較適合正式應用情境。當如下圖選妥好網站 URL 與佈署的微軟資料中心區域之後,即可按下 Create Web Site 按鈕。本範例使用 tomdemoweb 為網站名稱,整個網站的 URL 即為 https://tomdemoweb.azurewebsites.net/

WebSiteFTP2

Windows Azure Web Site 服務啟用速度要比 Windows Azure Cloud Services 與 Windows Azure Virtual Machines 快,如下圖般,大約一兩分鐘的時間一個空的網站就已經建立完畢。接下來我們可以點選此一剛建立好的網站。

WebSiteFTP3

進入到監控與管理畫面後,點選右方 "reset deployment credentials" 連接,準備設定 FTP 佈署時所需要的帳號與密碼。

WebSiteFTP4

當按下"reset deployment credentials" 連接後,會出現如下圖般設定使用者帳號與密碼的畫面,可以輸入未來 FTP 連線所需要的帳號與密碼。以這個例子而言,倘若使用者帳號為 tomlee,而此 Windows Azure Web Sites 名稱為 tomdemoweb,未來 FTP 連線的帳號名稱即為 tomleedemoweb\tomlee。

WebSiteFTP5

當使用 FTP  連線時所需使用的資訊其實在管理畫面都有提示,例如 FTP URL 以及之前提到的登入帳號名稱。

WebSiteFTP6

接下來我們即可透過免費的 FTP 工具軟體 Filezilla 利用這些資訊登入此一 Web Site,並準備上傳檔案。

WebSiteFTP7 

當我們的網站有多個執行個體 (intances) 時也無須擔心,所有網站會共用一個內容資料夾,類似我們在 Windows Server 網路環境中利用 UNC 路徑共享一個檔案伺服器一般,此一架構對於應用程式更新相當便利,但面臨巨量用戶同時存取時,執行效能可能會較相同虛擬機器規格之 Windows Azure Cloud Services 與 Windows Azure Virtual Machines 略差。