VS2010發(fā)布Web網(wǎng)站技術攻略
VS2010 Web網(wǎng)站發(fā)布詳解
對VS2010來說,發(fā)布Web是一件相當容易的事情,也許就是這個原因導致網(wǎng)上關于發(fā)布網(wǎng)站具體細節(jié)的資料很少。然而這些正是初學者所需要的,下面我詳細介紹一下Web網(wǎng)站發(fā)布的具體過程。
第一步:在解決方案資源管理器中右擊Web應用程序名(例如:newsSystem)——》點擊發(fā)布。
第二步:在彈出的對話框中,發(fā)布方法選:文件系統(tǒng),目標位置自定義(如:選桌面的test文件夾),勾選“發(fā)布前刪除所有現(xiàn)有文件”單選框,然后點擊發(fā)布即可。其第二步【發(fā)布Web】部分,【目標文件】處要選擇一個非項目工程所在文件夾。
接下來我們會在test文件夾下看到我們需要的文件,下圖是test文件夾下的文件和原來項目中的文件對比:
第三步:在IIS中發(fā)布網(wǎng)站。右擊計算機——》管理,打開計算機管理窗口,點擊“服務和應用程序”下的“Internet 信息服務(IIS)管理器”
第四步:右擊應用程序池,添加應用程序池,在彈出的“添加應用程序池”窗口中,填寫名稱,.NET Framework 版本根據(jù)你開發(fā)程序用到的.NET Framework版本定,確定即可。
第五步:右擊“網(wǎng)站”,添加網(wǎng)站,在“添加網(wǎng)站”窗口中,填寫網(wǎng)站名稱,應用程序池選上一步新建的應用程序池,物理路徑指向第二步輸出的文件夾,“鏈接為”選特定用戶,并輸入你的`用戶名和密碼,IP地址填本機IP。確定即可。
到目前為止,我們的Web網(wǎng)站就發(fā)布成功了,此時就可以通過瀏覽器輸入網(wǎng)址查看我們的網(wǎng)站了。
VS2010 發(fā)布Web網(wǎng)站問題詳解
如果大家各方面設置的都比較好,看完上面的文章你的網(wǎng)站就已經發(fā)布了,在局域網(wǎng)內已經可以瀏覽了。不過,通常如果你是首次發(fā)布,應該不會那么順利。重點在下面:
當在地址欄中輸入設定的IP地址+端口號后可能出現(xiàn)以下幾種情況。
問題一,檢測到在集成的托管管道模式下不適用的ASP.NET設置。
解決辦法:打開IIS,選擇應用程序池,會看到右側的操作欄中有一項為【設置應用程序池默認設置】,點擊進入,把【啟用32位應用程序】置為true,把【托管道模式】置為Classic。
問題二,由于Web服務器的“ISAPI 和 CGI 限制”列表設置,無法提供您請求的頁面。
解決辦法:打開IIS,選擇根目錄,雙擊【ISAPI和CGI限制】這項,然后將【ASP.NET v4.0.30319】這兩項均設置成允許。
問題三,沒有可訪問的表。請確保在Global.asax中注冊了至少一個數(shù)據(jù)模型并啟用了基架,或者實現(xiàn)自定義頁面。
解決辦法:打開工程,打開Global.asax文件,在RegisterRoutes 方法下我們可以看到下面內容
重要: 數(shù)據(jù)模型注冊 取消對此行的注釋,為 ASP.NET Dynamic Data 注冊 LINQ to SQL 模型。若要設置 ScaffoldAllTables = true,需符合以下條件,即確定希望數(shù)據(jù)模型中的所有表都支持基架(即模板)。若要控制各個表的基架,請為表創(chuàng)建分部類并將 [ScaffoldTable(true)] 特性應用于分部類。注意: 請確保將“YourDataContextType”更改為應用程序的數(shù)據(jù)上下文類的名稱。 model.RegisterContext(typeof(YourDataContextType), new ContextConfiguration() { ScaffoldAllTables = false });
把代碼段解注后,用自己創(chuàng)建的上下文替換YourDataContextType,把ScaffoldAllTables 置為true,我用的是Linq to Sql 寫的數(shù)據(jù)部分。修改后是這個樣子DefaultModel.RegisterContext(typeof(BmsContextDataContext), new ContextConfiguration()
修改之后,不要忘記重新再發(fā)布一次。
問題四,不能打開數(shù)據(jù)庫,登錄失敗
解決辦法:這個問題剛出來的時候有點懵,以為是IIS設置的問題,后來仔細一瞅,隱隱覺得似曾相識,通過查看數(shù)據(jù)庫連接,發(fā)現(xiàn)果然是連接數(shù)據(jù)庫上出現(xiàn)了問題,跟IIS設置無關。
解決了以上幾個問題之后,再次登錄發(fā)布后的網(wǎng)站,就能正常訪問了,然后又在同局域網(wǎng)的其他機器上驗證了一下,也沒什么問題。
【VS2010發(fā)布Web網(wǎng)站技術攻略】相關文章: