2010-11-07 46 views
7

我有一個ASP.NET網站項目,我在Win2k8 R2服務器上發佈到IIS。它有一個名爲login.aspx的默認頁面。我在發佈的網站上設置了它。發佈網站時,我的默認文檔名稱不斷從IIS中刪除

問題是,每次我發佈網站的新版本時,login.aspx條目都會從IIS中網站的「默認文檔」設置中被刪除。這非常煩人。我如何從Visual Studio發佈我的網站,而不是每次都刪除默認頁面?

+0

你在發佈(在輸出窗口)得到任何錯誤?嘗試發佈到本地目錄,看看會發生什麼。該文件的構建操作是什麼? – Oded 2010-11-07 08:56:34

+0

@Oded - 不是,根本沒有錯誤。我*發佈到本地目錄; VS環境與IIS位於同一臺服務器上,並直接發佈到inetpub \ wwwroot文件夾。 – 2010-11-07 09:06:08

+0

奇怪。我從未在目標上看到發佈操作_刪除_文件。文件的構建操作是什麼(在屬性中)? – Oded 2010-11-07 09:08:24

回答

3

您可能正在使用「子網站」,並且根網站的默認文檔列表爲空。

嘗試添加默認文檔(甚至虛擬)到根網站,看看是否有幫助。

(取自這裏:http://forums.iis.net/t/1169880.aspx

16

嘗試把一個defaultDocument在您的網站的web.config:

<system.webServer> 
    <!-- your other stuff --> 

    <defaultDocument enabled="true"> 
     <files>  
      <clear/>     
      <add value="login.aspx"/> 
     </files> 
    </defaultDocument> 

</system.webServer> 

+0

我知道這是一箇舊帖子,但仍然喜歡留下答案。 – 2012-09-12 15:11:43

+0

謝謝!有一些代表。 – Jeremy 2014-11-24 17:47:58

+1

這比接受的答案要好。在網站的配置中使用它更好,而不是依賴於服務器根網站的設置。它更加明確,可以被源代碼控制。謝謝! – Ryan 2016-07-06 02:40:08

0

當login.aspx的被添加到子網站。它是'本地'類型。它給出了這個錯誤。 你應該把這個頁面添加到servere本身。 單擊服務器,然後選擇功能視圖 - > iis ---默認文檔,然後右鍵單擊添加您的「login.aspx」頁面。

現在,您應該在所有子站點的默認文檔中看到此信息,並且它不會在發佈或服務器重新啓動時被刪除。

這是我個人exceperience

奧馬爾·卡邁勒