问题标签 [custom-error-pages]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
12366 浏览

.net - 如何在 Windows 身份验证中使用自定义错误页面

我正在使用 asp.net 3.5 web.config 来限制访问,效果很好。

系统错误消息将阻止未经授权(但经过身份验证)的用户:

为了使消息更友好,我取消注释 customErrors 标志并在我的项目的根路径中创建一个 GenericErrorPage.htm。

但是,它只是行不通。我仍然收到系统错误消息,而不是我的自定义错误页面。

任何建议将不胜感激。

0 投票
1 回答
1212 浏览

cakephp - 自定义 cakeError

这就是我所拥有的:

评论控制器.php

app_error.php

我在app/views/errors 中创建了error404.ctpspam.ctp

问题是当评论是垃圾邮件时($result['spam'] == 1),cakePHP 会加载 error404 布局。但奇怪的是,它显示了垃圾评论的消息(“SPAM !!!”)。

当它是不存在的注释时,会加载正确的 error404 布局。

有任何想法吗?

编辑:问题已解决。代码是正确的,但必须重新启动服务器。这不应该是必要的,但这就是解决问题的原因。也许 cake 没有遵循新的 *app_error.php* 文件的正确路径。

0 投票
1 回答
2068 浏览

web-config - Web.config 自定义错误不适用于 404

这适用于以下请求:

但是对于任何其他扩展,这会提供服务器 404 页面!如何使服务器 404 页面重定向到我的错误页面?

0 投票
2 回答
755 浏览

asp.net - 状态码为 404 的 ASP.NET 页面

每个人!我遇到了 asp.net 错误异常的问题。我正在开发房地产网络应用程序,谷歌已经为房地产链接建立了索引。但是经过一段时间后,数据库中不再存在几个房地产。下一个问题是:如果用户单击 db 中不再存在的房地产链接,我需要返回带有状态代码 404 的客户错误页面。

我尝试通过以下方式做到这一点:

  1. 在处理网址时,我检查是否存在此类不动产
  2. 如果不是我自己扔RealEstateDontExistException
  3. 在 Global.asax 处理服务器错误时,我检查此错误是否为RealEstateDontExistException then类型
  4. 我设置:

我需要显示带有状态码 404 的 aspx 页面。在本地主机上它工作正常。但是,如果我尝试从生产服务器获取不存在的不动产,那么 Web 浏览器会显示下一个文本

“您要查找的资源已被删除、更改名称或暂时不可用。” 状态码为 404。

有人能帮我吗?谢谢 。

0 投票
1 回答
1070 浏览

asp.net-mvc - 如何让 ASP.NET MVC 遵守我的 customErrors 设置?

在我的 web.config 的 customErrors 标记中,我指向一个控制器。在我的控制器中,我重定向到由多个应用程序共享的外部错误页面。

<customErrors defaultRedirect="~/Error/ServerError" mode="On">

我的控制器:

我正在调用 Error/ErrorTest 来测试错误处理。但它总是重定向到 Views/Shared/Error.cshtml 而不是重定向到我指定的控制器。

如何让 asp.net mvc 在我的 customErrors 设置中遵守 defaultRedirect 路径?

UDPATE:我也在使用 ELMAH 并覆盖了 HandleErrorAttribute,如本文所述。我从 .Net Reflector 看到基本 HandleErrorAttribute 将 Error 设置为视图。对于重定向到 Error.cshtml 或其他视图,我认为我无能为力。

0 投票
2 回答
4298 浏览

asp.net - HttpContext.current.Session 在错误页面中被清除

我为我的ASP.NET 4应用程序制作了一个自定义错误页面。我将异常对象放入HttpContext.current.Session["CustomError"]但当用户被重定向到错误页面时HttpContext.current.Session["CustomError"]null。我在 CustomError 类构造函数中这样做:

当我跨过代码 Session["Error"] 包含错误对象时。任何的想法?

更新:

我从 web.config 中删除了自定义错误页面并将其添加到 glabal.asax:

通过逐步执行此函数,我注意到当抛出异常时,此函数被调用两次,第一次 Session["CustiomError"] 包含错误对象,但第二次为空。

0 投票
2 回答
13675 浏览

php - Apache 的 ErrorDocument 指令不重定向

我的 .htaccess 文件中有一堆 ErrorDocument 指令,以便捕获 Apache 可能向用户抛出的几乎所有可能的错误,并将所述用户重定向到我的错误控制器,然后以更用户友好的方式呈现错误。但是,它似乎不起作用。

例如,当我输入一个无效的 URL 时,例如 mysite.com/""##$##$! 我总是收到 Apache 的默认 403 错误消息,而不是重定向到我的 errors.php 文件。下面是我正在使用的指令。我需要做任何其他事情才能使其正常工作吗?(AllowOverride All 已设置)

如果这是处理绝对自定义错误处理的错误方法,请告诉我,我将不胜感激朝正确方向轻推。

谢谢!

编辑:哦,只是想我会提到这一点。我编写了自己的 MVC 结构来重定向请求,并且效果很好。在 PHP 中,如果用户请求一个不存在的 URL,我自己的 404 错误将正常触发(或我定义的任何其他错误)。所以基本上,如果我输入 mysite.com/!!!! 进入 URL,它会起作用,我得到一个 404。但是,每当我使用双引号字符开始请求时,都会触发默认的 Apache 403 错误。奇怪的。此外,500 错误也将无法重定向到 errors.php,并且只会返回默认的 Apache 500 屏幕(例如,使用 header("HTTP/1.0 500 Internal Server Error");die(); 进行测试时) .

编辑 3:我只是尝试放入ErrorDocument 200 "message"我的 .htaccess 文件并没有发生任何事情,我打开的任何页面都可以正常打开。在最坏的情况下,这应该会陷入无限循环。最好的情况下,它应该输出“消息”。它也没有,它只是忽略了ErrorDocument。Apache 的访问日志记录了一个正常的 200 OK 标头,但 .htaccess 完全忽略了它。

0 投票
1 回答
917 浏览

subdomain - 404错误页面重定向

我使用以下代码设置了自定义 404 错误页面。

但是当我检查发送的标头时,我看到首先发送了一个永久移动的 301,然后是一个 404 错误标头。那么它对seo有好处吗?它会给机器人带来问题吗?

我的第二个问题是注册。将不存在的子域转移到 404 错误页面。我正在使用 Cpanel,我只希望在 CPanel 中创建的子域能够工作,并且我创建了通配符重定向,但不存在的子域给了我一个 OK 状态。我该怎么做将其重定向到 404 页面。

谢谢。

0 投票
3 回答
22752 浏览

iis-7 - 为 IIS7 网站配置带有重定向的自定义 ASP 404 页面

我们正在将现有网站从 IIS6 迁移到 IIS7,但在设置 404 错误页面时遇到了一些困难。我们的 404-errorpage 是这样工作的:

  • 一个自定义的 ASP 页面会根据一个简短的“特殊”URL 列表(例如http://example.com/limited-offers)检查 URL。
  • 如果 URL 已知,它将重定向到该页面的实际 URL。
  • 否则,访问者将被重定向到带有 404 状态码的静态错误页面。

使用 IIS6,这就像宣传的那样工作,但使用 IIS7,有些事情发生了变化。IIS7 在遇到定义了错误页的状态码时,将始终显示配置的错误页。如果我们的静态错误页面带有 404-statuscode,这意味着 IIS7 将再次执行自定义 ASP 页面。这导致无限重定向。

我们发现可以通过在 Web.Config 中添加设置来规避这种行为

然而,在添加这个之后,我们的自定义 ASP 页面拒绝重定向。在与 Fiddler 检查后,似乎 IIS7 强制使用 404 状态码,覆盖了我们的 302 重定向。

谁能推荐另一种方法来解决我们的问题?

0 投票
2 回答
212 浏览

vbscript - 还可能发生哪些其他 5xx 错误以及如何查找/跟踪它们?

我有一个在 IIS 6 上运行的经典 ASP/VBScript 站点,以及一个名为 SmarterStats 的程序(通过较早的问题找到)提供来自服务器日志的各种统计信息和信息。这是一个内部站点,我们确实使用集成身份验证 (AUTH_TYPE = Negotiate)。

我正在查看有关响应代码的报告,它说在过去的 7 天里,有 255 个响应带有 5xx 错误代码......自然不是我能得到的最有用的统计数据。

我有一个针对 500 和 500.100 错误的自定义错误页面,它记录了我要跟进的细节——而且该日志实际上是空的。我已经使用故意破坏的页面和标准用户帐户进行了测试,并且它按预期工作 - 自定义消息,日志条目。(并检查“友好的错误消息”打开和关闭 - 无论哪种方式工作)

我在日志中的唯一条目是错误 -2147024843 的单个条目(与身份验证相关,需要很长时间才能获得响应),仅此而已......可能发生的其他错误以及如何找到/跟踪它们?

我应该通过我的自定义页面路由所有不同类型的 5xx 错误吗?或者还有什么我应该做的吗?


解决方案:我将通过自定义页面运行所有 5xx 错误。由于让我完全困惑的原因,错误已经停止......我没有改变任何东西,没有人改变那台服务器上的任何东西 - 但错误已经停止。去搞清楚。