apache反向代理域名访问,获取到内网ip,而不是代理ip

给客户组项目,配置了域名,访问域名时,总是访问的是内网ip,这样直接暴露内网ip不合规定,所以先审查代码,

jsp原先写法:

String path = request.getContextPath();


String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

<base href="<%=basePath%>">

这样总是获取真实ip,所以修改为

StringBuffer url = request.getRequestURL();//获取请求网址
String basePath = url.delete(url.length() - request.getRequestURI().length(), url.length()).append(request.getContextPath()).append("/").toString();

然后查看apache代理配置,发现配置错误,把httpd.conf修改后的代码粘贴在下面:

# Virtual hosts 打开虚拟主机的配置
#Include conf/extra/httpd-vhosts.conf

ProxyRequests off
ProxyPreserveHost On  #打开host域名请求地址,如果使用代理,获取的请求地址是对外域名,如果off关闭,则获取的是内网ip地址请求

<Proxy balancer://proxy>
                Order Deny,Allow
                Allow from  all
                BalancerMember http://192.168.0.150:8089  status=+H
                BalancerMember http://192.168.0.150:8090
</Proxy>
ProxyPass / balancer://proxy/
ProxyPassReverse / balancer://proxy/  #直接跳转到域名地址,如果不配置,系统直接转发到内网ip地址上面
TraceEnable Off



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值