2012-07-15 78 views
-1

我正在訓練我的web.config以識別最佳默認文件是什麼。根據我的主機,它應該看起來像下面的列表。元素'system.web'具有無效的子元素'defaultDocument'

<?xml version="1.0"?> 
<!-- 
    For more information on how to configure your ASP.NET application, please visit 
    http://go.microsoft.com/fwlink/?LinkId=169433 
    --> 
<configuration> 
    <appSettings/> 
    <system.web> 

    <defaultDocument> 
     <files> 
     <clear /> 
     <add value="Defalut.aspx" /> 
     </files> 
    </defaultDocument> 

    <compilation debug="true" targetFramework="4.0"/> 
    <httpRuntime/> 
    <pages controlRenderingCompatibilityVersion="4.0"/> 
    <machineKey/> 
    <customErrors defaultRedirect="Error.aspx" mode="On"/> 
    </system.web> 
</configuration> 

問題是VS2012(Express)將其標記爲藍色並聲稱在主題中出現錯誤。首先我認爲我可以上傳它,因爲它是通過蠻力使服務器喜歡的文件,但隨後它生氣了,吐出以下

HTTP錯誤500.19 - 內部服務器錯誤 請求的頁面不能因爲該頁面的相關配置數據無效,因此被訪問。

當我讀取錯誤消息時,它說:「配置節'defaultDocument'無法讀取,因爲它缺少一個節聲明。」

我已經完成了我的功課,發現下面的文章,但由於我的情況限制(例如我需要手動上傳web.config文件,我不能在我的託管服務器上運行任何腳本公司),這是無濟於事。

我該如何殺死這個小問題?

回答

0

「Defalut.aspx」是一個明確的黃旗。

建議:

  1. 剛剛創建MSVS2012一個新的虛擬項目(我沒有一份得心應手,所以我不能幫你的那一刻)

  2. 剪切和粘貼將自動生成的「web.config」添加到您的項目中並驗證它是否有效。 如果沒有,只需要那些MINIMAL需要更改以獲得乾淨的編譯/執行。

  3. 保存你的工作的web.config

  4. 嘗試增加你的「defaultDocument」部分,看看會發生什麼的備份。

  5. 如果還是不行,請剪切/粘貼:

    一)準確的部分(如我想你沒有以上)

    B)確切的錯誤信息

ALSO:

問:現在失敗在BOTH您MSVS2012(本地運行)您的目標網絡服務器,對嗎?

問:你確定目標網絡服務器是否支持ASP.Net 4.0?

+0

對拼寫錯誤檢測的讚揚。好眼睛! – 2012-07-16 01:16:31

+0

我按照你的要求做了(不需要做任何改動),並使它與web.config的「新鮮」版本一起工作。然後我添加了defaultDocument標籤,並在下一條評論中收到了我要粘貼的消息。 – 2012-07-16 01:17:43

+0

元素'system.web'具有無效的子元素'defaultDocument'。預期可能的元素列表: – 2012-07-16 01:19:07

0

您配置看起來正確的,但出現錯誤,因爲它無法找到是故意要爲您網站的所有文件夾

默認文檔文件

所以請他正確的文件的拼寫替換「Defalut.aspx」在下面的xml中

<defaultDocument> 
     <files> 
     <clear /> 
     <add value=*"Defalut.aspx"* /> 
     </files> 
    </defaultDocument> 
+1

這絕對是一個問題領域,但我不認爲這是原因我的問題,因爲錯誤消息抱怨標籤不被識別,而不是文件未被發現。 – 2012-07-16 01:07:24

+0

事實上,VS非常清楚地表明「無法識別的配置節system.web/defaultDocument」。加上我已經糾正了拼寫錯誤仍然存​​在。 – 2012-07-16 01:09:39

相關問題