【发布时间】:2011-01-23 21:36:10
【问题描述】:
有时我在生产环境中遇到异常:
- 流程信息
- 进程 ID:3832
- 进程名称:w3wp.exe
- 账户名称:NT AUTHORITY\NETWORK SERVICE
- 异常信息
- 异常类型:System.Web.HttpException
- 异常消息:发送 HTTP 标头后服务器无法设置状态。
- 索取信息
- 请求网址:http://www.myulr.pl/logon
- 请求路径:/logon
- 用户主机地址:10.11.9.1
- 用户:user001
- 已通过身份验证:真
- 身份验证类型:表单
- 线程账户名:NT AUTHORITY\NETWORK SERVICE
- 话题信息
- 线程 ID:10
- 线程账户名:NT AUTHORITY\NETWORK SERVICE
- 正在冒充:假
Stack trace: at System.Web.HttpResponse.set_StatusCode(Int32 value) at
System.Web.HttpResponseWrapper.set_StatusCode(Int32 value) at
System.Web.Mvc.HandleErrorAttribute.OnException(ExceptionContext filterContext) at
System.Web.Mvc.ControllerActionInvoker.InvokeExceptionFilters(ControllerContext controllerContext, IList(1) filters, Exception exception) at
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) at System.Web.Mvc.Controller.ExecuteCore() at
System.Web.Mvc.MvcHandler.<>c__DisplayClass8.<BeginProcessRequest>b__4() at
System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass1.<MakeVoidDelegate>b__0() at
System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass8(1).<BeginSynchronous>b__7(IAsyncResult _) at
System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult(1).End() at
System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) at
System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& ompletedSynchronously)
我在我的测试环境中没有注意到这个错误我应该检查什么?
我正在使用 ASP.NET MVC 2(Release Candidate 2)
【问题讨论】:
-
这也发生在我身上。与您的情况一样,错误来自 HandleErrorAttribute 内部。
-
你能解决这个问题吗?
-
自从切换到 MVC 2 后,我也遇到了同样的问题。此外,在设置 cookie 时,类似的错误 - 在发送标头后不会发生。我很好奇答案。就我而言,在 http/https 之间切换似乎起了作用。
-
我发现我试图在 Actionfilter (OnActionExecuting) 中重定向用户 - 这是一个问题
标签: asp.net-mvc http iis-7