You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Razor Pages(.NET 8)自定义500错误页无法显示排查

ASP.NET Razor Pages (.NET 8) 自定义500错误页不显示的排查与解决

问题场景

在.NET 8.0的ASP.NET Razor Pages项目中,我配置了自定义错误页:403 Forbidden、404 Not Found、500 Server Error,所有错误页都放在Pages/Error目录下,页面模型仅包含空构造函数。按照MSDN和Stack Overflow的推荐配置顺序设置后,403和404错误页能正常跳转显示,但500错误页始终显示ASP.NET默认页面。

排查步骤

  • 环境版本:使用ASPNetCore.App 8.0.11
  • 错误触发:在页面后台的OnGetAsync()方法中抛出new NotImplementedException()来模拟500错误
  • 初始配置:已禁用app.Environment.IsDevelopment分支的逻辑,使用app.UseExceptionHandler("/Error")替代开发者异常页,但问题未解决
  • 尝试调整:将UseExceptionHandler的路径改为"/Error/500",依旧无法加载自定义500页

最终解决方法

检查项目配置文件时,发现WebApplicationConfiguration.cs文件底部残留了一行app.UseDeveloperExceptionPage();代码,移除该行后,将UseExceptionHandler路径设置为"/Error/500"的配置生效,自定义500错误页可以正常显示了。

内容的提问来源于stack exchange,提问作者Dib

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 03:54:53