0瞎扯
朋友們有時候我們寫個一個web程序只能使用卡西尼服務器調試,下面我教大家發布到IIS服務器上(包括本地ISS7.5和遠程服務器
IIS)
1.VS發布
a.點擊web項目->發布
b.在發布->配置文件->新建

連接中選擇文件系統,並選擇發布文件要存放的地址

設置->配置:如下

設置完成后點擊發布
發布好的目錄
b.配置IIS
0.創建網站之前必須啟動:W3SVC(World Wide Web Publishing Service)服務,作用:通過 Internet 信息服務管理器提供 Web 連接和管理。對應的進程:C:\Windows\system32\svchost.exe
1.打開IIS(打開方式),網站添加一個新網站,
2.在右側先啟動后瀏覽
這時如果出現下圖HTTP錯誤500-19-Internal Server Error
我們查看原因 :配置錯誤 由於權限不足而無法讀取配置文件(權限不足,我們給他加權限)
解決:編輯文件權限,選中“Xxx網站”節點→右鍵→編輯權限→加入everyone賬戶。

3,再繼續瀏覽 出現錯誤HTTP 錯誤403.14-Forbidden
原因:沒有為請求的 URL 配置默認文檔,並且沒有在服務器上啟用目錄瀏覽。
解決方案:選中"Xxx網站"節點→看右邊的“功能視圖”→目錄瀏覽→在右邊的窗口中點擊“啟用”、“禁用”。不建議啟用目錄瀏覽
當不啟用目錄瀏覽,是在Asp.net中要設置配置一個默認顯示的頁面:選中“網站”節點→“功能視圖”→“默認文檔”→雙擊→在右邊的對話框中“添加”一個默認要顯示的文檔的名稱,並移動(上移、下移),在MVC中配置路由即可,不必設置默認頁。
更改應用程序池->雙擊自己的網站項目
更改.net Framework
4,正常情況下就可以訪問自己的網站啦,
5,其他IIS錯誤總結
(1)HTTP錯誤500.21-Internal Server Error
上圖的錯誤,可能的原因:1>IIS安裝不完整。2>沒有在IIS上注冊.net framework。
找到對應的.net framework目錄下,執行aspnet_regiis.exe命令,重新注冊一次.net framwork到IIS。注冊目錄如下:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i (安裝)
打開控制台(空白處+shift)彈出命令窗口注冊.net framwork到IIS


(2)數據庫驗證錯誤
原因:當前網站連接數據庫的時候采用的是windows身份驗證方式,而當前網站對應的應用程序池中的賬戶沒有訪問sql server的權限。解決:把網站連接數據庫的身份驗證方式改成sql server身份驗證方式,使用Sql server賬號登錄。
(3)HTTP錯誤500.24-Internal Server Error
程序使用的是經典模式,服務器使用的是集成模式,選中對應網站的應用程序池,修改為經典模式。
(4)HTTP錯誤404.17-Not Found
服務器與網站程序.net版本不一致。或者是IIS安裝不完整,或者是沒有正確注冊.net framework(錯誤二)。
3發布到服務器
連接服務器win+R
同上方法配置:
注意IIS7發布時MVC項目是會出現:HTTP錯誤 403.14-Forbidden Web 服務器被配置為不列出此目錄的內容

解決方法:更改網站根目錄web.config文件
添加
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
要設置<modules>節的值為true;
4.結束語
這就是我在IIS發布時的總結,如果有沒解決的問題可以給我留言,我會盡可能的幫助大家的!!!
