在我的web.config中的customErrors标记中,我指向一个控制器.在我的控制器中,我将重定向到由多个应用程序共享的外部错误页面.
<customErrors defaultRedirect="~/Error/ServerError" mode="On">
我的控制器:
public class ErrorController : Controller
{
    public ActionResult ServerError()
    {
        return Redirect("/Systems/ASPNETErrorHandling/ErrorPage.aspx");
    }
    public ActionResult ErrorTest()
    {
        throw new Exception("testing error handling");
    }
}
我正在调用Error/ErrorTest来测试错误处理.但它总是重定向到Views/Shared/Error.cshtml而不是重定向到我指定的控制器.
如何让asp.net mvc遵守customErrors设置中的defaultRedirect路径?
UDPATE:我还使用ELMAH并重写HandleErrorAttribute在描述这个职位.我从.Net Reflector看到,基础HandleErrorAttribute将Error设置为视图.我不认为我可以做很多事情,重定向到Error.cshtml,或其他一些视图.
error-handling asp.net-mvc custom-error-pages custom-errors asp.net-mvc-3
我有一个在IIS 6上运行的经典ASP/VBScript站点,以及一个名为SmarterStats的程序(通过之前的问题找到),提供来自服务器日志的各种统计信息和信息.这是一个内部站点,我们使用集成身份验证(AUTH_TYPE = Negotiate).
我正在查看关于响应代码的报告,它说在过去7天内有255个响应,其中包含5xx错误代码...自然不是我能找到的最有用的统计数据.
我有一个500和500.100错误的自定义错误页面,记录了我要跟进的细节 - 该日志几乎为空.我已经使用故意破坏的页面和标准用户帐户进行了测试,并且它按预期工作 - 自定义消息,日志条目.(并打开和关闭"友好错误消息" - 以任何方式工作)
我在日志中唯一的条目是错误-2147024843的单个条目(与身份验证相关,花了太长时间才能获得响应),就是这样......其他错误可能发生了什么以及如何查找/跟踪它们?
我应该通过自定义页面路由所有不同类型的5xx错误吗?或者我还应该做些什么呢?
解决方案:我将通过自定义页面运行所有5xx错误.由于让我感到困惑的原因,错误已经停止......我没有改变任何东西,没有人改变该服务器上的任何东西 - 但错误已经停止.去搞清楚.
java web应用程序中有一个选项可以通过在web.xml中定义error-page来处理异常:
<error-page>
<error-code>500</error-code>
<location>/error500.jsp</location>
</error-page>
我想知道是否可能存在定义JSP错误页面的问题(而不是HTML错误页面).因为JSP在服务器端运行.是否存在服务器"半死"的情况,抛出异常,尝试重定向到错误页面,但由于"半死"而无法呈现它?
"半死"是指服务器处于某些状态仍然有效的状态,但其他情况不起作用.具体来说,我的意思是无论控制重定向到web.xml中定义的错误页面仍然有效,但JSP的实际呈现由于某种原因不起作用(抛出异常).
我实际上没有看到这样的问题,但我想知道是否可能.因为这样可能会出现HTML错误页面(因为它没有服务器端逻辑),而JSP错误页面则不起作用.
如果是这种情况,那么当JSP错误页面失败时,如何"回退"到HTML错误页面?我仍然希望使用JSP错误页面来显示响应中返回的错误详细信息,但如果不可能,那么我想显示HTML页面.
我希望这是有道理的....
信不信由我试图用简单的谷歌搜索寻找这个问题的答案,但我没有找到任何东西(用"WebMatrix自定义错误页面","WebMatrix如何制作自定义服务器端错误页面"等) .),但也许我没有用正确的术语搜索......
无论如何,我只是想知道是否有一种方式(我相信它涉及web.config文件)显示一个定制的错误页面而不是任何服务器端错误页面.
我知道有一种方法可以对某些页面(如404或500)执行此操作但是是否可以针对任何服务器端错误捕获所有页面?(我猜404不行,因为它必须找到你的网站来显示任何自定义页面?)
如果这是一个重复的问题,请原谅我,但我缺乏这方面的知识可能让我没有正确的搜索条件进行搜索,尽管我也尝试过搜索SE.
asp.net web-config custom-error-pages webmatrix asp.net-webpages
我正在使用Owin来托管WebAPI控制器.我有Owin中间件,它执行身份验证并在身份验证失败时设置以下内容:
context.Response.StatusCode = (int) HttpStatusCode.Unauthorized;
当发生这种情况时,我想显示一个HTML页面,其中包含对用户的一些说明.(比如,"你需要登录.")
目前我只是将用户重定向到accessdenied.html页面,但我更希望在没有用户被重定向的情况下直接显示访问被拒绝(我不希望Web浏览器中的Location字段改变) .
我假设我可以动态生成HTML并将其添加到响应中,例如通过从资源中读取HTML内容.
我的问题是:是否可以使用配置自动显示自定义访问被拒绝错误页面?在"traditioinal"ASP.NET中,可以在web.config中设置customErrors,但这似乎不适用于Owin selfhost:
<customErrors>
  <error statusCode="401" redirect="~/accessdenied.html"/>
</customErrors>
我使用asp.net 3.5 web.config来限制访问,它工作得很好.
<authentication mode="Windows">
<authorization>
    <allow users="Bill, John"/>
    <deny users="*"/>
</authorization>
未经授权(但已通过身份验证)的用户将被系统错误消息阻止,说明:
Server Error in '/' Application
Access is denied.
Description: An error occurred while .......
Error message 401.2: Unauthorized: Logon failed due to server configuration ...
为了使消息更友好,我取消注释customErrors标志并在项目的根路径中创建GenericErrorPage.htm.
<customErrors mode="On" defaultRedirect="GenericErrorPage.htm">
    <error statusCode="403" redirect="NoAccess.htm" />
    <error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
但是,它只是不起作用.我仍然收到系统错误消息而不是我的自定义错误页面.
任何建议将不胜感激.
我正在构建新的扩展程序,我想在Google Chrome中自定义默认错误页面.我在这里阅读了"覆盖页面"文档,但还没有找到任何有关自定义我指定的页面的信息.
任何建议都非常感谢.谢谢.
我想要自定义的错误页面是:
此网页无法使用
无法找到_ ___处的服务器,因为DNS查找失败.DNS是将网站名称转换为其Internet地址的网络服务.此错误通常是由于没有连接到Internet或配置错误的网络引起的.它也可能是由于无响应的DNS服务器或阻止Google Chrome访问网络的防火墙引起的.以下是一些建议:稍后重新加载此网页.检查您的Internet连接.重新启动可能正在使用的任何路由器,调制解调器或其他网络设备.检查您的DNS设置.如果您不确定这意味着什么,请与您的网络管理员联系.尝试通过以下步骤禁用网络预测:转到扳手菜单>选项>在引擎盖下,然后取消选择"预测网络操作以提高页面加载性能".如果这不能解决问题,我们建议您再次选择此选项以提高性能.在防火墙或防病毒软件的设置中添加Google Chrome作为允许的程序.如果它已经是允许的程序,请尝试从允许的程序列表中删除它并再次添加它.如果使用代理服务器,请检查代理设置或联系网络管理员以确保代理服务器正常工作.如果您认为不应该使用代理服务器,请调整代理服务器设置:转到扳手菜单>选项>引擎盖>更改代理设置...> LAN设置,然后取消选择"为您使用代理服务器"局域网"复选框.
错误105(net :: ERR_NAME_NOT_RESOLVED):无法解析服务器的DNS地址.
我的服务器使用自定义404页面.在404页面的直接请求上是否有可能获得404服务器响应?现在:URL:http://mydomain.xxx/404.php HTTP/1.1 200 OK服务器:nginx
我有404和500状态代码的自定义错误页面,当我放置localhost:3000/something.html时,它工作正常.但是当我放置localhost:3000/controller/element_of_a_model时不起作用.
routes.rb中:
if Rails.env.production? then
  unless Rails.application.config.consider_all_requests_local
    get '*not_found', to: 'errors#error_404'
    get '*internal_server_error', to: 'errors#error_500'
  end
else
  unless
    get '*not_found', to: 'errors#error_404'
    get '*internal_server_error', to: 'errors#error_500'
  end
end
ErrorsController:
def error_404
    render_error 404
end
def error_500
    render_error 500
end
private
   def render_error(status)
       respond_to do |format|
           format.html { render 'error_' + status.to_s() + '.html', :status => status, :layout => 'errors'}
           format.all { render :nothing => true, :status => status }
   end
end
有没有一种方法可以为Django项目中的每个应用程序创建多个自定义错误模板,我的意思是,在我的项目中,我有3个应用程序,每个应用程序将显示3种不同的custom 404错误。
现在,我在后台应用程序和前台显示相同的404错误页面。
asp.net ×2
web-config ×2
.net ×1
asp-classic ×1
asp.net-mvc ×1
c# ×1
django ×1
iis-6 ×1
java ×1
jsp ×1
nginx ×1
overriding ×1
owin ×1
python ×1
vbscript ×1
web ×1
web.xml ×1
webmatrix ×1