Nginx 当上游服务器返回失败时的处理办法
陶辉95课
| Syntax: | proxy_next_upstream |
|---|---|
| Default: |
proxy_next_upstream error timeout; |
| Context: | http, server, location |
生效前提:没有向客户端发送任何内容 如果向上游服务器发送一个字节说明已经发送生效了 这个指令就失效了
- 配置:error:与服务器建立连接、向其传递请求或读取响应头时出错;
- timeout:与服务器建立连接、向其传递请求或读取响应头时发生超时;
- invalid_header:服务器返回空响应或无效响应;
- http_:http_500、http_403 等这样错误
- non_idempotent:
- off:关闭这个功能
| Syntax: | proxy_next_upstream_timeout |
|---|---|
| Default: |
proxy_next_upstream_timeout 0; |
| Context: | http, server, location |
限制将请求传递到下一个服务器的时间。0值关闭此限制
| Syntax: | proxy_next_upstream_tries |
|---|---|
| Default: |
proxy_next_upstream_tries 0; |
| Context: | http, server, location |
限制将请求传递到下一个服务器的可能尝试次数。0值关闭此限制
代码演示:
server {
listen ;
server_name shopp.com.cn;
location /httperr{
proxy_pass http://nextups;
proxy_next_upstream http_500; #与下面类同 将错误限定在 500错误的时候
}
location /error {
proxy_pass http://nextups;
proxy_connect_timeout 1s;
proxy_next_upstream error; #当设置为非off得时候,假如一台上游服务器无法链接比如 8012服务器宕机了,那么用户请求会转发到8011端口,但是如果设置为off的话 则返回502错误
}
}
upstream nextups{
server ;
server ;
}
| Syntax: | proxy_intercept_errors |
|---|---|
| Default: |
proxy_intercept_errors off; |
| Context: | http, server, location |
error_page /test.txt;
location /intercept {
root html;
proxy_pass http://192.168.0.51:8013;
proxy_intercept_errors on;#当指令启用为on时 则 error_page就生效了 目前指定了文件路径 使用了root指令
}
Nginx 当上游服务器返回失败时的处理办法的更多相关文章
- nginx 加工上游服务器返回的内容,并返回给客户端
禁用上游响应头部功能 Syntax: proxy_ignore_headers field ...; Default: — Context: http, server, location 功能介绍:某 ...
- Nginx 针对上游服务器缓存
L:99 nginx缓存 : 定义存放缓存的载体 proxy_cache 指令 Syntax: proxy_cache zone | off; Default: proxy_cache off; Co ...
- 基于nginx实现上游服务器动态自动上下线——不需reload
网上关于nginx的介绍有很多,这里讲述的是上游服务(如下图的Java1服务)在没有"网关"的情况下,如何通过nginx做到动态上下线. 传统的做法是,手动修改nginx的upst ...
- nginx 与上游服务器建立连接的相关设置
向上游服务建立联系 Syntax: proxy_connect_timeout time; #设置TCP三次握手超时时间,默认60秒:默认超时后报502错误 Default: proxy_connec ...
- VS2012出现加载失败时的解决办法 win7同样适用
今天更新了WIN8系统补丁,然后就出现了大量的问题,特别是经常用的软件像VS2012 老是加载失败,还说是缺少什么包一类的,弄了好长段时间终于解决了,现在将经验分享下 工具/原料 VS2012+WIN ...
- 服务器返回的各种HTTP状态码介绍
[摘要]HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码.它由 RFC 2616 规范定义的,并得到RFC 2518.RFC 2817.RFC 22 ...
- php json_decode返回失败的排查
参考网址: https://segmentfault.com/a/1190000006154011 返回失败时,通过 json_last_error可以获取其json解析失败的原因.
- Nginx 接受上游缓存流程
L:101 这个指令主要是由上游服务器来决定是否缓存 详见博客Nginx 针对上游服务器缓存
- Nginx 如何处理上游响应的数据
陶辉93 一个非常重要的指令 proxy_buffer_size 指令限制头部响应header最大值 proxy_buffering 指令主要是指 上游服务器是否接受完完整包体在处理 默认是on 也就 ...
随机推荐
- redis底层设计(三)——redis数据类型
今天我们来看一下redis的数据类型.既然redis的键值对可以保存不同类型的值,那么很自然就需要对键值对的类型进行检查以及多态处理.下面我们将对redis所使用的对象系统进行了解,并分别观察字符串. ...
- 无预挖无ICO-潜力币XDAG最强攻略
更新下XDAG上交易所了,当时看好这个币才推荐的,那时场外才2毛不到,现在涨到9毛一个了... https://www.coinbat.com/trade/panel/xdag... VBitEX [ ...
- 【php增删改查实例】第二十二节 - 引入百度地图
20.用户新增地址字段 在实际的开发中,经常会出现对数据表新增或者修改字段的事情,所以,当用户提出加字段的需求时,我们的页面以及后台程序都要进行相应的改动. 本节就以增加一个地址字段为例. 打开nav ...
- 基于Vue.js 2.0 + Vuex打造微信项目
一.项目简介 基于Vue + Vuex + Vue-router + Webpack 2.0打造微信界面,实现了微信聊天.搜索.点赞.通讯录(快速导航).个人中心.模拟对话.朋友圈.设置等功能. 二. ...
- 聊聊我是如何自学Java两年的(上)
没啥经验,说说心路历程吧~~ 过两天就9月1号了,正式成为大三生,没错,我就是如此嫩~~~ 萌芽在初中 初一的时候,电视广告结尾都会放一句,我们的网站是.....于是心里琢磨,网站是怎么建的呢?我可以 ...
- 美橙互联SSL 部署到IIS 7以上
前言:立秋已至,汗流浃背,感觉夏天正到最热的时候...广州某一“著名”大厦 老板:穆德(我),现在要开发个微信小程序.开搞吧. 我:纳尼?好吧.需要购买SSL证书(⊙o⊙)? 老板:神马鬼,有没有免费 ...
- H5 24-CSS三大特性之继承性
24-CSS三大特性之继承性 我是段落 我是段落 我是超链接 我是大标题 <!DOCTYPE html> <html lang="en"> <head ...
- D2. Great Vova Wall (Version 2)
l链接 [https://codeforces.com/contest/1092/problem/D2] 题意 和D1一样只是不能竖直放了 分析 水平放的话,就只可能是相邻等时才可以,而且你会发现 只 ...
- Python学习第五篇——如何访问字典
# the example_1 aim to tell how to use dctionary,and how to access list or dictionary infos={"f ...
- elasticsearch判断索引是否存在
一.判断索引是否存在 指定索引名,判断指定的索引是否存在集群中 /** * 判断指定的索引名是否存在 * @param indexName 索引名 * @return 存在:true; 不存在:fal ...