網頁

ASP.NET Web網站部署(1)

ASP.NET網站設計完成後,就是要把ASP.NET安裝或部署到「網站伺服器」上,這個網站伺服器不一定只是IIS還有「Mono」,Mono是一個能讓.NET Framework在Unix-Like執行,簡單想把Mono當成Unix-Like的IIS,不過目前只支援C#語法,Visual Basic的開發者目前還無法使用。

ASP.NET網站部署有幾種方式:
  1. 使用xcopy來部署
    文章裡面寫的很清楚,而且還能學到一個技術,當你想暫時停止網站,那你可以在網站根目錄之下新增一個 App_offline.htm 的檔案,內容空白或寫些訊息都可,你會發現,網站立即進入「off line,離線」模式。
    我個人是習慣在根目錄之下新增一個「_App_offline.htm」檔案,需要時就把最前面的「底線」移除,來進行網站維護的工作,實在是一個非常好用的技巧。
  2. 使用「複製網站」來部署
    單純使用複製的方式來部署網站,只是有多種方式來複製。



    複製網站



    連接



    選擇複製方式
  3. 使用「發行網站」來部署(Visual Web Developer Express 版不支援)
  4. 發行網站
    發行網站設定
  • 讓這個先行編譯的網站成為可更新
    先行編譯就是把網站一些相關的程式碼編譯為*.dll檔案,當勾選時,編譯出來的*.aspx將看不到任何程式碼,也就是「不可更新」。
  • 使用固定命名和單一頁面組件
    當無使用固定命名時,編譯出來的*.dll檔案會是「亂碼」檔名,例如:App_Web_cc1dcmhw.dll、App_Web_cwyohkth.dll,但使用了固定命名後:App_Web_about.aspx.cdcab7d2.dll、App_Web_changepassword.aspx.dae9cef9.dll。
  • 發出偵錯資訊
  • 針對先行編譯組件啟用強式命名
    將編譯出來的*.dll加上金鑰(Key)。

    使用SN.exe來產生金鑰檔


    Visual Studio命令提示字元(2010)

    指令:sn -k 檔名


    切換到目錄



    選擇金鑰檔,然後編譯發行

    查看金鑰資訊


    使用IL反組譯工具查看*.dll資訊



    Manifest資訊



    金鑰資訊


使用「安裝部署專案」來部署,先簡單介紹,這個我們下一篇再來介紹,此種部署可以把整個ASP.NET網站編譯成一個「*.exe或*.msi」的安裝檔,然後拿去買錢,然後上傳到伺服器安裝,或燒成光碟拿給客戶,會很有Fu。

沒有留言:

張貼留言

感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。