nginx proxy_next_upstream导致的一个重复提交错误
问题:一个请求被重复提交,原因是nginx代理后面挂着2个服务器,请求超时的时候(其实已经处理了),结果nigix发现超时,有把请求转给另外台服务器又做了次处理。
我当时的nginx配置:
location ~ /apollo {limit_req zone=pin burst=20;rewrite /apollo/(.*) /$1 break;proxy_next_upstream http_500 http_502 http_503 http_504 error timeout invalid_header;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://tomcat_apollo;expires 0;}
分析:代码中配置了proxy_next_upstream这个选项。此选项标识tomcat返回以下(http_500 http_502 http_503 http_504 error timeout invalid_header)错误码都会进行重试另外一台服务器。这个对于读请求没有关系,如果对于写请求就会发生多次提交事件。
解决方案:去掉proxy_next_upstream.
参考:http://nginx.org/en/docs/http/ngx_http_proxy_module.html
http://blog.csdn.net/mj158518/article/details/49847119
nginx proxy_next_upstream导致的一个重复提交错误相关推荐
- validate中submitHandler采用ajaxsubmit导致表单重复提交
validate中submitHandler采用ajaxsubmit导致表单重复提交 在这几日的表单验证实践中,由于我的三个form都放在一个页面上,所以在submit上采用的是ajax方式来提交表单 ...
- 【重复提交表单】表单重复提交的三种情况,解决办法
引入 看一个重复提交表单的例子 F12可以看到,请求体中的参数在刷新页面之后仍然保留,因此每一次刷新页面,都会把现有的请求体中的表单数据提交一次到服务器,而接收的页面还是insert.jsp,于是造成 ...
- SpringBoot解决用户重复提交订单(方式一:通过唯一索引实现)
文章目录 前言 1.方案实现 1.1.给数据库表增加唯一键约束 1.2.编写获取请求唯一ID的接口 1.3.业务提交的时候,检查唯一ID 2.小结 前言 对于投入运营的软件系统(商城.物流.工厂等), ...
- 防止表单重复提交的问题
最近老大让我处理一下订单重复提交的问题,不会做,自己网上默默的查资料,发现各式各样的,然后自己整理成一下,方便以后用. 首先我们分析下原因: 1.在网络延迟的情况下让用户有时间点击多次提交按钮导致表单 ...
- 使用session防止表单进行重复提交
我们都知道可以通过js的方法来实现防止表单重复提交,但是js只适用于"在网络延迟的情况下让用户有时间点击多次submit按钮导致表单重复提交" 的情况下进行操作, 那如果碰到&qu ...
- JavaWeb学习总结(十三)——使用Session防止表单重复提交
在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提交按钮重复提交表单,我们在开发中必须防止表单重复提交. 一.表单重复提 ...
- JAVA_OA(十四)番外:JAVAWEB防止表单重复提交的方法整合(包括集群部署)
因为自己要用,所以查找了网络上javaweb项目防止表单重复提交的方法,有些部分不太好找,所以整合后贴出来,首先是孤傲苍狼的一部分博客文章,集群部署的解决方案在后面(注意大红字) 原文出处:孤傲苍狼的 ...
- java怎么防止表单重复提交_如何防止表单重复提交
在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提交按钮重复提交表单,我们在开发中必须防止表单重复提交. 一.表单重复提 ...
- 使用Session防止表单重复提交
JavaWeb学习总结(十三)--使用Session防止表单重复提交 在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提 ...
最新文章
- java 教室借用管理系统_教师办事指南 | 借用教室
- javascript实现的一个带下拉框功能的文本框
- Shiro集成SpringBoot时出现 not eligible for auto-proxying
- y7000p内存是一个16还是8+8_选择困难症:手握16万,该尝鲜高尔夫8还是抄底奥迪A3?...
- 编译py-faster-rcnn全过程
- cin、cin.get()、cin.getline()、getline()、gets()函数的用法
- 二叉堆时间复杂度 php,二叉堆(Binary Heap)
- 手把手教你搭建Nginx-rtmp流媒体服务器+使用ffmpeg推流
- Activity 半透明样式
- mysql 备份脚本 linux,LINUX中MySQL如何按时备份脚本
- python语言-Python Insider
- cookie分号后面没有值_Cookie的属性(cookie的设置、获取和删除)
- 计算机科学之父——Alan Turing及相关电影介绍
- 欧几里得算法及其证明
- 相片打印机原理_【视界网】什么是便携式打印机以及工作原理有哪些呢?
- 怎样开通gmail邮箱smtp服务
- 何香伊的脸儿,战痘经历
- 大学计算机课要怎么学,大学计算机课学结
- python getattrribute_补8.python之面相对象part.7(类相关函数的补充)
- 顾客满意度意义与作用