nginx配置错误页面
有时候页面会遇到404页面找不到错误,或者是500、502这种服务端错误,这时候我们可能希望自己定制返回页面,不希望看到默认的或者是内部的错误页面,可以通过nginx配置来实现。
1 50x错误
对于50x错误,通常不会直接将错误内容显示在页面,而是由前台页面来解析错误内容并展示在前台的某个位置。
我们可以自己定义一个json返回对象,由页面来解析这个json对象。
以500错误为例,在nginx服务器任意目录下(例如,/usr/share/nginx/html)创建一个500.json文件,内容如下:
{
"errorCode": 500,
"errorDesc": "服务暂时不可用,请稍后再试"
}
nginx配置文件中,在server段中添加以下内容:
error_page 500 /500.json ;
location ^~ /500 {
root /usr/share/nginx/html ;
}
重启nginx生效。这时如果后端服务返回500错误,则nginx会把自定义的json报文返回到前台
2 404错误
对于404错误,很多时候可能用户会输错url,这时候错误会直接展示在页面上。
可以有两种处理方式,一种是同50x错误,自己定义一个404错误页面,这个页面就可以做的好看一点。
另一种方式是重定向到某个已存在的uri。例如,后端已经定义好了404错误页面,nginx就不需要单独创建一个404页面了,直接指向这个页面就可以了。
配置方法如下:
在http段中添加以下配置:
proxy_intercept_errors on;
error_page 404 =301 https://$host:443/#/404 ;
proxy_intercept_errors表示对后端服务器返回错误进行拦截处理;
error_page 404 =301表示重定向到错误页面。
nginx配置错误页面的更多相关文章
- 【jsp】配置错误页面
1,使用JSP方式 如果配置是Jsp时,需要把isErrorPage设置为true, 以及设置 <%@ page language="Java" contentType=&q ...
- .net三步配置错误页面,让你的站点远离不和谐的页面
假设你的站点出现一堆让人看不懂的报错,那么你就不是一个合格的程序猿.也不是一个合格的站长. 以下的方面能够帮助你的站点远离让人头大的页面. 第一步:配置web.config 打开web.config, ...
- springboot系列六、springboot配置错误页面及全局异常
一.spring1.x中处理方式 @Bean public EmbeddedServletContainerCustomizer containerCustomizer() { return new ...
- JavaWeb配置错误页面
我们在实际开发过程中经常会遇到程序出错的各种情况,比如最常见的404错误,500错误等等相关错误,服务器默认会将错误的信息直接显示在浏览器的页面上,如下图所示: 不管是谁如果看到这种情况的话,顿时就会 ...
- web.xml配置错误页面,及输出错误信息
1.需要在web.xml中配置相关信息 <!-- 默认的错误处理页面 --> <error-page> <error-code>403</error-code ...
- Servlet 异常处理( 配置错误页面)
当一个 Servlet 抛出一个异常时,Web 容器在使用了 exception-type 元素的 web.xml 中搜索与抛出异常类型相匹配的配置. 您必须在 web.xml 中使用 error-p ...
- nginx配置错误
重启nginx:sudo /usr/local/nginx/sbin/nginx -s reload 出现错误提示:nginx: [emerg] unknown directive "if& ...
- nginx自定义错误页面
这里配置注意是在 server 443端口 ,蓝色部分为主要部分.这个server不是全部代码. server{ #监听443端口 listen ; #对应的域名,把baofeidyz.com改成你们 ...
- nginx 配置后页面访问是报500错
该问题是html文件权限问题. 用jenkins 并远程服务器上传到另一台服务器的html ,在配置好nginx 的location root 绝对位置后还是报错500 手工用root上传时访问正常 ...
随机推荐
- SAS基础 -- 逻辑库不存在问题解决
SAS安装 -- 逻辑库不存在问题解决 1.SAS打不开,将系统时间改为系统提示错误的时间: 2.请在以下两个路径下,新建SASCFG文件夹(注意红色部分为你电脑SAS的安装路径) D:\Prog ...
- 基于ssh框架web示例
基于ssh框架web示例 介绍 Spring Boot Web 开发非常简单,该示例包括包括目前web开发基本都需要用到的内容 - 序列化(json)输出 - 过滤器(filters) - 监视器(l ...
- Elasticsearch 2.3.2 安装部署
先按照http://blog.csdn.net/love13135816/article/details/51690280这个教程安装, 不过后面的IK分词器安装部分有问题. 所以中文分词器插件的安装 ...
- Dexposed:android免Root无侵入Aop框架
在网上看到了阿里推出的一个android开源项目,名为Dexposed, 是一个Android平台下的无侵入运行期AOP框架.旨在解决像性能监控.在线热补丁等移动开发常见难题,典型使用场景为: AOP ...
- HTTP协议 之 缓存
转自: http://www.cnblogs.com/TankXiao/archive/2012/11/28/2793365.html HTTP协议提供了非常强大的缓存机制, 了解这些缓存机制,对提 ...
- Looper、MessageQueue、Message、Handler的关系
1.快速复习 1.1 基本装置 类 装置名 作用 线程中数量 Looper 消息分发装置 从消息队列中取出一个消息,交给对应的Handler处理消息. 1 MessageQueue 消息队列 保存所有 ...
- Java几种常见的排序方法
日常操作中常见的排序方法有:冒泡排序.快速排序.选择排序.插入排序.希尔排序,甚至还有基数排序.鸡尾酒排序.桶排序.鸽巢排序.归并排序等. 冒泡排序是一种简单的排序算法.它重复地走访过要排序的数列,一 ...
- 把sed当作命令解释器使用
[root@sishen ~]# vim script.sed #!/bin/sed -f #交换第一列和第二列 s/\([^,]*\),\([^,]*\),\(.*\).*/\2,\1, \3/g ...
- 关于 user agent ua
1.ua介绍: ua查询参考网址:http://www.atool.org/useragent.php(也可以自己制作html查询) js 属性:navigator.userAgent 使用方法:将网 ...
- mysql提升效率
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...