在夜间,我们的生产服务器现在显示以下错误。完全相同的代码适用于我们的测试服务器,但不适用于生产。它使用的是ASP.NET 3.5
为system.codedom创建配置节处理程序时发生错误:无法转换类型为' System.Configuration.ConfigXmlElement'的对象。输入' System.Xml.XmlAttribute'。
行:349
第349行:
<system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
<providerOption name="CompilerVersion" value="v3.5"/>
<providerOption name="OptionInfer" value="true"/>
<providerOption name="WarnAsError" value="false"/>
</compiler>
</compilers>
</system.codedom>
我尝试回到较旧的git提交工作时,用测试替换Bin文件夹&#39; Bin文件夹等等,但错误信息仍然存在。根据我的托管公司,服务器设置完全相同,并且安装了相同的.NET框架。
设置<httpErrors errorMode="Detailed" />
时,我看到的是The page cannot be displayed because an internal server error has occurred.
真心感谢任何帮助!
答案 0 :(得分:0)
托管公司将整个文件夹恢复到之前的日期,现在可以使用了。为了解决这个问题,我们将所有内容重定向到我们的测试服务器,而不是:
<system.webServer>
<!--Temp to testserver-->
<rewrite>
<rules>
<clear />
<rule name="Temporary test server redirect">
<match url="^(.+)" />
<action type="Redirect" url="http://web.domain.com/{R:1}" redirectType="Temporary"/>
</rule>
</rules>
</rewrite>
<system.webServer>
{R:1}保留查询参数