我得到一个错误,每次我上传我的webapp到提供商。由于使用了customErrors模式,我所看到的是默认的“运行时错误”消息,指示我关闭customErrors以查看有关错误的更多信息。

我恼怒地织好了网。配置如下所示:

<?xml version="1.0"?>
<configuration>
    <system.web>
        <customErrors mode="Off"/>
    </system.web>
</configuration>

然而,我所得到的只是一个愚蠢的远程错误页面,上面没有任何有用的信息。 我还能做什么来关闭customErrors ?!


当前回答

为了给这个问题添加更多的情况(因为这是我看到的,因为我有完全相同的问题),以下是我的答案:

在我的例子中,我从通用错误中剪切/粘贴文本,如果你想知道哪里出了问题,放

<system.web>
   <customErrors mode="Off"/>
</system.web>

所以这应该已经解决了它,但当然没有!我的问题是有一个<系统。Web >节点上面几行(在编译和身份验证节点之前),以及结束标记</system。下面几行是Web >。一旦我修正了这个,问题就解决了。我应该做的是复制/粘贴这一行:

<customErrors mode="Off"/>

这篇文章摘自《我反复做的蠢事》的编年史,标题为“复制粘贴走向毁灭”一章。

其他回答

如果你正在使用MVC预览4,你可能会遇到这种情况,因为你正在使用HandleErrorAttribute。行为在5中改变了,因此如果关闭自定义错误,它将不处理异常。

我也遇到过同样的问题,我查看了事件查看器应用程序日志,其中清楚地提到了发生这种情况的异常。在我的情况下,例外如下…

异常信息:

Exception type: HttpException 
Exception message: The target principal name is incorrect.  Cannot generate SSPI context.
at System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app)
at System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers)
at System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context)
at System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context)
at System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext)

The target principal name is incorrect.  Cannot generate SSPI context.

我刚刚在应用程序池中更新了我的密码,它为我工作。

您还可以尝试在服务器机器上的浏览器中打开该网站。我不怎么使用ASP。但我记得自定义错误的东西有一个设置,只显示完整的错误文本在服务器上,作为一种安全措施。

为了给这个问题添加更多的情况(因为这是我看到的,因为我有完全相同的问题),以下是我的答案:

在我的例子中,我从通用错误中剪切/粘贴文本,如果你想知道哪里出了问题,放

<system.web>
   <customErrors mode="Off"/>
</system.web>

所以这应该已经解决了它,但当然没有!我的问题是有一个<系统。Web >节点上面几行(在编译和身份验证节点之前),以及结束标记</system。下面几行是Web >。一旦我修正了这个,问题就解决了。我应该做的是复制/粘贴这一行:

<customErrors mode="Off"/>

这篇文章摘自《我反复做的蠢事》的编年史,标题为“复制粘贴走向毁灭”一章。

我也遇到了同样的问题,但我用不同的方式找到了解决方法。

-

我所做的是,在IIS管理器中打开应用程序池的高级设置。

在这里,我将启用32位应用程序设置为True。