將Asp.Net網站發布到IIS的四種方法及注意事項:
不管是那種發布方法, 第一件事情是讓IIS能夠支持asp.net程序, 默認IIS是不開器asp.net網站程序的支持的.在IIS中的"Web服務擴展"中, 確保"ASP.NET v2.0.50727"被啟用. 其他的可以保持禁用狀態.
發布方法1:---直接復制到IIS目錄發布目錄中(C:Inetpubwwwroot)
a. 將經過VS調試且運行正常的ASP.NET網站項目的文件夾復制到IIS的wwwroot文件夾中.
b. 檢查項目文件夾的"屬性"--->"安全", 查看Internet來賓帳戶, 確保其有"讀取"權限.(默認情況下, 復制到wwwroot中的文件夾會繼承wwwroot的"讀取"權限, 但當修改過IIS主目錄位置時, 常常需要手動指定"讀取"權限)
c. 在IIS管理器中刷新網站後, 將會看到剛復制的文件夾. 在IIS中, 右擊該文件夾--->"屬性"--->"目錄"選項卡, 確保"讀取","記錄訪問"以及"索引資源"3項的選中狀態.
然後點擊"目錄安全"選項卡, 點擊"授權及訪問控制"下邊的"編輯", 確保"允許匿名訪問"和"集成windows驗證"的選中狀態, 並且切忌, 不要修改匿名帳戶的用戶名和密碼.
如果希望非index, default, iistart等名稱的頁面做默認首頁, 還需要在"文檔"選項卡中, 點擊"啟用默認內容文檔"的添加, 將你希望做首頁的文件名添加.
d. 再回到文件夾"屬性"中的"目錄"選項卡, 點擊"創建"即可.(需要執行腳本請勾選"腳本資源訪問"和執行權限中的"純腳本")
發布方法2:---使用Vs2008的IDE自帶的發布功能, 進行發布操作.
a. 在經過VS調試且運行正常的ASP.NET網站項目中, 右鍵點擊網站項目, 選擇"發布網站"後點擊"目標路徑"後便的Browser按鈕(就那個...按鈕), 將彈出一個"發布網站"對話框.
b. 在彈出的對話框中, 先點擊左側的"本地IIS", 然後在右側的"資源管理器"上方, 點擊"創建新Web應用程序"後(也可以點擊"創建虛擬目錄"), 輸入應用程序的名字, 之後一路ok就可以了
發布方法3: ---使用虛擬目錄發布網站.
a. 在IIS管理其中, 點擊默認網站(或你的網站), 選擇"右鍵"--->"新建"--->"虛擬目錄", 之後在彈出的對話框中輸入別名, 然後再選擇網站項目的所在路徑.
建議將網站項目拷貝到wwwroot下再創建虛擬路徑, 一來可以備份, 二來不用再修改權限. 如在其他目錄, 還需要指定網站項目文件夾的文件系統權限(如發布方法1中的a)
b. 選擇玩路徑後, 除"讀取"外還需要勾選"運行腳本". 之後點擊確定即可.
發布方法4:---使用文件夾共享中的"web 共享", 進行發布操作.
a. 在網站項目文件夾上點擊"右鍵", 選擇"共享和安全"之後, 在彈出的對話框中, 選擇"web 共享"選項卡. 選擇"共享此件夾"之後, 將彈出"編輯別名"對話框, 再修改別名後, 確定即可.(可按需勾選腳本選項)
建議: 將網站項目復制到某個目錄後, 再執行"web 共享". 不知道什麼原因, 在有些文件夾下執行不能夠成功, 如桌面文件夾下.
IIS出問題後的常見檢查步驟:
1. 檢查"Web服務擴展"中, 是否開啟了"ASP.NET v2.0.50727"的支持.
2. 打開網站所在的文件夾(如: wwwroot), 在"屬性"--->"安全"中, 檢查有沒有Internet來賓帳戶, 如沒有請添加, 並為其至少指定一個"只讀"權限.
3. 在IIS管理器重, 選中"默認網站"後點擊"屬性", 在"主目錄"中, 查看有沒有選中"讀取"、"記錄訪問"以及"索引資源".再"目錄安全"中, 點擊"授權及訪問控制"下邊的"編輯"之後, 查看又沒有勾選"匿名訪問"和"集成windows驗證".
檢查"ISAPI篩選器"選項卡, 是否為空.
如果設置非index、default等名稱的頁面為主頁, 請檢查是否在"文檔"選項卡的"啟用默認內容文檔"中添加你希望做首頁的文件名.
4. 檢查"默認網站"下邊的應用程序, 右鍵點擊你網站對應的應用程序, 選擇"屬性", 按上面3的要求檢查"目錄"、"目錄安全"和"文檔"三個選項.