asp.net - 如何创建自定义 404 页面并发送 404 消息?

标签 asp.net http-status-code-404

我知道如何使用 Rewrite 重定向页面。但是当有一个 404 页面时,我如何显示我自己的自定义 404 页面(我知道我可以重写它)并说这实际上是一个 404 而不仅仅是一个普通的重写页面?

-编辑-

我如何设置错误代码而不是询问服务器?如果用户转到/user/invaliduser/我想发送 403 或 404 但我的重写会将其发送到有效页面以显示用户信息所以我想知道如何说不存在而不是空字段页面。

最佳答案

为了更灵活然后严格 404.html 遵循我的例子。 在 Global.asax.cs 覆盖中:

public void Application_Error(Object sender, EventArgs e)
{
        if (HttpContext.Current.Request.IsLocal) return;

        Exception ex = Server.GetLastError();
        HttpException httpEx = ex as HttpException;
        string errorUrl;
        if (httpEx != null && httpEx.GetHttpCode() == 403)
            errorUrl = "~/error/403.aspx";
        else if (httpEx != null && httpEx.GetHttpCode() == 404)
            errorUrl = "~/error/404.aspx";
        else
            errorUrl = "~/error/500.aspx";
        Server.Transfer(errorUrl);
}

例如,我的 404.aspx 包含发送反馈的表单,403.aspx - 为用户公开更多有趣的项目,500 向管理员发送警报。

关于asp.net - 如何创建自定义 404 页面并发送 404 消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2108633/

相关文章:

c# - 使用 WinForm 或应用程序在客户端上打印

asp.net - Facebook 登录的新#access_denied (ASP.NET MVC)

c# - 名称为 account 的代理类型已由另一个程序集定义

wcf - Nancy 路由导致 404

asp.net - 展示如何将 jQuery 与 ASP.NET 结合使用的最佳书籍

c# - asp.net 页面解析错误

apache - Ubuntu 13.10 - Apache2 - 自定义 404 - 不带 .htaccess

asp.net-mvc - 将 asp.net mvc beta 部署到 iis 6 导致 404

在 IIS : HTTP Error 404 上托管的 Angular 2

r - base::url 读取网页但 xml2::read_html 给出 404 错误