某网络环境下访问业务异常问题排查

小丫2年前技术文章705

问题现象

在办公网络环境下访问业务:http://xxx服务,无法正常跳转至登陆页面,如下:

image.png

但是在另外一台机房服务器访问业务:http://xxx 是正常的,会自动跳转到登陆页面,如下:

1.jpg

排查步骤

1、查找是否有报错接口

远程运维同事电脑,在办公网络环境下再次测试访问,复现问题。

首先还是使用浏览器开发者工具,查看是否有资源加载异常报错

image.png

可以看到部分资源请求异常,加载异常的资源地址格式为:http://xx/xxx

在办公网络环境下ping这个域名,查看解析的ip:

image.png


可以看到内网办公网络环境下ping解析到的地址。

而该IP地址即为后端提供服务的服务器的地址。而该服务器上运行的服务区为8081端口,不存在80端口监听。

image.png

为什么在机房服务器访问就是正常的呢?

登陆机房服务器,ping域名:xxxx,可以看到解析出来的为一个公网IP。即机房网络和办公网络访问目标业务的时候,走的流量链路是不一样的。

image.png

解决方法

如果想让办公网络环境走内网链路访问正常,并且不变更后端代码。

可以通过找台内网机器然后配置代理的方式解决。

1)配置代理,前端代理端口为80,后端源站信息为:xxxx 端口。

2)然后将域名 解析到代理服务器的IP。

3)代理中需要配置允许跨域访问,来源建议直接写*即可。


haproxy代理配置可参考如下内容:


  frontend application_fztzuat


    bind *:80


    bind *:443 ssl crt /etc/pki/tls/certs/xx.pem  


      http-request set-header Access-Control-Allow-Origin * 


      mode http      


      acl domain_fztzuat  hdr_beg(host) -i [xxx](http://xxxx) 


      use_backend fztzuat  if domain_fztzuat   


  backend fztzuat  #后端服务器集群配置


    mode http


    balance roundrobin  #后端负载均衡策略


    server web01 xxx:xx


相关文章

kubernetes实战详解

kubernetes实战详解

一、k8s是什么?1、Kubernetes 是用于自动部署,扩展和管理容器化应用程序的开源系统2、生产级别的容器编排系统3、PaaS平台二、容器是什么?或者说docker是什么?1、容器就是一个沙箱C...

Ldap高可用部署

Ldap配置高可用两个节点上均执行mkdir /data/ldapcd /data/ldap1.1. 添加mod_syncprov.ldif文件vi mod_syncprov.ldif 内容如下:ob...

helm安装部署trino对接hive(一)

helm安装部署trino对接hive(一)

前提:本文前提是基于hive组件已经提前安装的情况下,安装部署好trino容器之后进行对hive组件的对接。helm trino地址:https://artifacthub.io/packages/h...

ES运维(七)添加sql插件

ES运维(七)添加sql插件

一、概述ElasticSearch安装SQL插件下载地址(中国大佬开发)二、集成sql插件1、下载es-sql插件下载地址: https://github.com/NLPchina/elastics...

kafka安全认证与授权

kafka安全认证与授权一、SASL、SSL、ACL介绍1.SASL鉴权协议,主要用来保证客户端登录服务器的时候,传输的鉴权数据的安全性,SASL是对用户名和密码加解密用的 2.SSL是一种间于传输层...

Alluxio 部署

Alluxio 部署

1、基础环境准备配置java环境变量tar -xzvf jdk-8u281-linux-x64.tar.gz -C /opt ln -s ...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。