【发布时间】:2011-05-16 05:01:15
【问题描述】:
我有一个具有 Global_Asax 和自定义错误页面的 Web 应用程序。当用户试图进入一个不存在的无效页面时,Application_Error 在 Global_asax 中被触发,并且记录的异常并不是真正的异常(您可以在下面查看异常详细信息)。我不想在 global_asax 中处理这种情况,而是在 IIS 中处理。我还尝试输入以 .asp 和 .html 结尾的无效路径,它们工作正常(它们不是以 global_asax 结尾,而是在默认的 404 页面中)。
我需要知道我必须从 IIS7 管理器更改哪个设置。
任何帮助将不胜感激。
错误 - 文件“/restricted/ff.aspx” 不存在。
System.Web.HttpException:文件 'test.aspx' 不存在。在 System.Web.UI.Util.CheckVirtualFileExists(虚拟路径 虚拟路径)在 System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(虚拟路径 virtualPath,布尔值 noBuild,布尔值 allowCrossApp,布尔值 allowBuildInPrecompile) 在 System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext 上下文,VirtualPath virtualPath, 布尔 noBuild,布尔 allowCrossApp,布尔值 allowBuildInPrecompile) 在 System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(虚拟路径 virtualPath,HttpContext 上下文, 布尔allowCrossApp,布尔 noAssert) 在 System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, 类型 requiredBaseType, HttpContext 上下文,布尔值 allowCrossApp,布尔 noAssert)在 System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext 上下文,字符串请求类型, VirtualPath 虚拟路径,字符串 物理路径)在 System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean & completedSynchronously)
【问题讨论】:
-
我也有同样的问题。我在 web.config 中定义了一个自定义 404 页面,它仅适用于非 .aspx 文件。
标签: c# asp.net iis-7 global-asax custom-error-pages