HAProxy自定义错误页面

HAProxy自定义错误页面

HAProny自定义错误页面有两种方式,一种是由haproxy本机提供错误页面,第二种是将错误重定向到一台专用来提供错误界面的sorry server上来提供错误页面

由haproxy本机提供错误页面

haproxy还可以捕捉错误码,然后根据错误码将错误页面重定向到本机的错误页面上,由haproxy来提供错误页面

语法
errorfile errorcode  /path/to/error/indexfile

示例:
修改haproxyp配置文件,在default配置段中配置errorfile选项

defaults
option http-keep-alive
option  forwardfor
maxconn 100000
mode http
timeout connect 300000ms
timeout client  300000ms
timeout server  300000ms
errorfile 500 /usr/local/haproxy/html/500.html      #捕捉错误码为500将其重定向,由本机来提供错误页面
errorfile 502 /usr/local/haproxy/html/502.html
errorfile 503 /usr/local/haproxy/html/503.html

创建错误页面

[[email protected] ~]# echo "error page 503" > /usr/local/haproxy/html/503.html
[[email protected] ~]# echo "error page 502" > /usr/local/haproxy/html/502.html
[[email protected] ~]# echo "error page 500" > /usr/local/haproxy/html/500.html

将后端的web服务器停止后测试

[[email protected] ~]# curl www.mylinuxops.com
error page 503          #显示为本地提供的503页面

由sorry server来提供错误页面

当由sorry server来提供错误页面时,就需要使用errorloc 选项来捕捉错误状态码,然后将其重定向到后端的sorry server上,由sorry server来提供错误页面
示例:
1.修改配置文件,捕捉错误状态码,送到后端sorry server

defaults
option http-keep-alive
option  forwardfor
maxconn 100000
mode http
timeout connect 300000ms
timeout client  300000ms
timeout server  300000ms
errorloc 503 http://sorryserver/error_page/503.html       #捕捉错误信息送到后端sorry server

2.配置后端sorry server

[[email protected] ~]# echo "503 error" > /apps/nginx/html/error_page/503.html

3.测试访问

[[email protected] ~]# curl -L www.mylinuxops.com  #将后端用于提供web服务的服务器关闭后进行测试
503 error           #错误页面被重定向了sorry server

原文地址:https://blog.51cto.com/11886307/2406610

时间: 2024-08-29 19:51:28

HAProxy自定义错误页面的相关文章

haproxy实现自定义错误页面的内容

现在利用haproxy实现自定义的haproxy的错误页面 我们现在实现自定义错误页面有以下的方法: 一种是自定义错误页面 haproxy.conf defaults errorfile 404 /etc/haproxy/errors/404.http errorfile 503 /etc/haproxy/errors/503.http 还有一种方法就是错误页面的跳转: 当出现错误的时候,我们跳转到指定的链接地址 frontend web_server    bind *:80    defau

MVC4 自定义错误页面(三)

一.概述 MVC4框架自带了定义错误页,该页面位于Shared/Error,该页面能够显示系统未能捕获的异常,如何才能使用该页面: 二.使用步骤: 1.配置WebConfig文件,在System.Web节点下加上 <customErrors mode="On"  defaultRedirect="~/Shared/Error" /> 翻阅一些大神写的博客,在他们的博客中指出defaultRedirect是指向错误页面的URL,可是经过本人测试的时候,发现

ASP.NET全局错误处理和异常日志记录以及IIS配置自定义错误页面

应用场景和使用目的 很多时候,我们在访问页面的时候,由于程序异常.系统崩溃会导致出现黄页.在通常的情况下,黄页对于我们来说,帮助是极大的,因为它可以帮助我们知道问题根源,甚至是哪一行代码出现了错误.但这对于用户是非常可怕的,因为用户不知道发生了什么,也无法了解黄页给出的内容.甚至,如果我们遇到一些不友好的人,他们会拿这些内容大做文章,对我们网站产生威胁. 那我们如何在程序异常.系统崩溃时,不会出现黄页,并且还可以给出一些更加友好的提示呢?甚至在我们需要的时候,可以收集这些异常信息,并加以分析,能

[转载]针对IIS7以上的ASP.NET网站自定义错误页面与异常日志总结

针对IIS7以上的ASP.NET网站自定义错误页面与异常日志总结 汪宇杰 2014-1-11 星期六 02:31 455 Reads 1 Comments 自定义错误页面和异常记录是个很古老的话题了,但依旧可以让人爆到现在.在我做了无数次试验并总结经验和原则后,写下本文,已警后人. 本文的范围和限制 本文仅仅适用于部署在IIS7或以上版本中的ASP.NET 4.0集成模式应用程序.IIS7以上的意思是Windows Server 2008以上服务器适用.我已在WS2012R2,IIS8上测过.

ASP.NET网站中设置404自定义错误页面

在用ASP.NET WebForm开发一个网站时,需要自定义404错误页面. 做法是这样的 在网站根目录下建立了一个404.html的错误页面,然后在Global.asax文件中,加入如下代码: <%@ Application Language="C#" %> <script runat="server"> void Application_Error(object sender, EventArgs e) { Response.Status

翻译:ASP.NETMVC自定义错误页面真的简单吗?

如果你在设置asp.net mvc自定义错误页面时遇到问题,这并不止你一个人.惊讶之余你的做法是正确的,没有起到作用的原因是其一部分错误是由asp.net管道处理的,另一部分是由iis直接处理. 通常情况 (我期望是这种情况,在一些其他框架/服务器上) 我们只需要在一个地方配置自定义错误页就可以了,无论怎么哪儿引发的错误.就像这样︰ <customErrors mode="On"> <error code="404" path="404.

MVC4 自定义错误页面(转)

一.概述 MVC4框架自带了定义错误页,该页面位于Shared/Error,该页面能够显示系统未能捕获的异常,如何才能使用该页面: 二.使用步骤: 1.配置WebConfig文件,在System.Web节点下加上 <customErrors mode="On"  defaultRedirect="~/Shared/Error" /> 翻阅一些大神写的博客,在他们的博客中指出defaultRedirect是指向错误页面的URL,可是经过本人测试的时候,发现

Spring Boot自定义错误页面,Whitelabel Error Page处理方式

我已经是Spring Framework框架的忠实粉丝.对于企业软件开发者来说它提供了对常见问题的通用解决方案,包括那些你在未来开发中没有意识到的问题.但是,它构建的J2EE项目变得比较臃肿,需要被一种新的解决方案替代. 我最大的抱怨就是最开始使用spring Framework构建项目十分缓慢和复杂,比如构建一个包含JPA的MVC应用.为改变这种情况,Spring Boot应运而生了. Spring Boot以一种新的微服务的方式来替代以Spring Framework构建项目的传统方式,我已

ASP.NET Core中显示自定义错误页面

在 ASP.NET Core 中,默认情况下当发生500或404错误时,只返回http状态码,不返回任何内容,页面一片空白. 如果在 Startup.cs 的 Configure() 中加上 app.UseStatusCodePages(); ,500错误时依然是一片空白(不知为何对500错误不起作用),404错误时有所改观,页面会显示下面的文字: Status Code: 404; Not Found 如果我们想不管500还是404错误都显示友好的自定义错误页面,该如何实现呢?请看下面的分解.