ngnix反向代理tomcat偶尔出现请求50x.html错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ngnix反向代理tomcat偶尔出现请求50x.html错误相关的知识,希望对你有一定的参考价值。

ngnix反向代理tomcat,分别在内网两台独立服务器上
现在出现同一个请求到ngnix代理到tomcat的时候有时候tomcat没有响应,原因在哪里?通过什么工具或方法可以跟踪到请求的整个过程。

这种问题可以这样排除,ngnix与tomcat在两台不台服务器。先通过ngnix的access.log测试ngnix是否接收了请求,如果接收了请求,再在tomcat那边记录是否接收到ngnix的转发,可以通过log或者硬编码的方式。
像你所说的问题,应该出现在tomcat的业务处理超时上,tomcat有一个超时限制,ngnix在一定的时间内没接到tomcat的回应后,就触发了502代码的错误,直接弹出50x.html提示,所以仔细检查tomcat业务处理过程即可。
参考技术A 这个你只能看tomcat的log了。tomcat有一个log能记录进来的request,还有时间和http 状态。

例如14:00:00 /myapp/login.html 200 这个就是进来一个localhost:8080/myapp/login.html的请求,http状态200,成功。追问

看来正常啊!对应不上来 不知道哪个请求对应哪个请求 假如找到了 我应该在怎么解决呢? 在两台服务器中间的!

追答

看来正常啊!对应不上来 不知道哪个请求对应哪个请求

----
呵呵,你得慢慢一行一行自己去看。这活别人不能帮你干。不知道哪个请求对应哪个请求?对应不上来?那你的在SIT里面去调试,别告诉我你们只有产品Production环境。

ngnix 配置反向代理

 

通过shell 脚本

#!/bin/bash

yum -y install wget pcre-devel openssl openssl-devel libtool gcc automake autoconf libtool make

wget http://nginx.org/download/nginx-1.6.3.tar.gz

tar -zxvf nginx-1.6.3.tar.gz -C /usr/local

cd /usr/local/nginx-1.6.3

./configure --prefix=/usr/local/nginx-1.6.3 --with-http_stub_status_module --with-http_ssl_module

make && make install‍

 

cd /usr/local/nginx-1.6.3/cnf

修改配置文件

 

 

 

 

然后

nginx -s reload

 

 

看效果

 

以上是关于ngnix反向代理tomcat偶尔出现请求50x.html错误的主要内容,如果未能解决你的问题,请参考以下文章

[跨域]跨域解决方法之Ngnix反向代理

说说iis,tomcat,nginx

Nginx代理

Ngnix技术研究系列1-通过应用场景看Nginx的反向代理

将 Nginx 配置为反向代理而不更改主机名

Nginx做反向代理后,请求变慢的问题