2012-07-15 79 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

相关问题