统一通用页面可以采用该方案
背景说明
在nginx作为代理网关层,正常业务流情况下,下游服务不会有暴露下游服务信息情况,但是一旦出现下游服务停机/异常流量,就可以对外披露内部服务群的信息。防君子不防小人啊!!!但是,我们可以通过对下游服务的状态码来进行服务隐私信息保护
实操
0. 查看nginx的版本
cd /usr/local/nginx/sbin/
./nginx -V
1. 查看nginx的配置文件
查看是否有统一页面配置
2. 开启配置
fastcgi_intercept_errors on;
proxy_intercept_errors on;
这个配置必须要配置,其实就是告诉nginx下游服务的状态码大于300的情况下,是否要交给error_page来处理,下面是官网解释
配置统一错误页面
编写404页面/50x页面
cd /usr/local/nginx/html
echo "stop request now !!!" >> stop.html
配置错误页面跳转
error_page 404 401 402 /stop.html;
error_page 500 501 502 503 505 /50x.html;
nginx重新加载配置文件
cd /usr/local/nginx/sbin
./nginx -t
./nginx -s reload
效果对比
未修改
明显对外暴露了我们下游服务群的情况,怕有心人嗅探攻击,可以看到tomcat等版本信息
已修改
生效了,达到效果,没有对外披露信息