`
三问飞絮
  • 浏览: 320646 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

JSP/Servlet使用代理时获取服务器地址为内网地址

    博客分类:
  • Java
阅读更多

场景:经验在JSP处得到生成basepath变量,用于得到用户访问的服务器地址路径。这样,在跳转或者图片资源都使用的是绝对路径。

     但是部署以后,发现basepath的地址为局域网的地址,而非外网访问时使用的地址。当然如果使用的是相对路径则无此问题。但在公司测试时,并无此现象。

 

解决:部署环境使用了代理服务进行转发,所以,对于应用服务器,接收到地址都是代理服务器发出的请求。自然也就是内网的地址了。

 

String path = request.getContextPath();
String bases = request.getHeader("X-FORWARDED-HOST");
if(bases==null || bases.length()<1){
	bases =request.getHeader("Host"); 
}

if(bases==null || bases.length()<1){
	bases =request.getServerName()+":"+request.getServerPort();
}
String basePath = request.getScheme()+"://"+ bases+ path+"/";
 
分享到:
评论

相关推荐

    Java/JSP获得客户端网卡MAC地址的三种方法解析

    本文将深入解析在Java/JSP环境中获取客户端网卡MAC地址的三种常见方法,旨在为开发者提供全面而深入的理解。 ### 方法一:通过Java NIO(非阻塞I/O)库 Java NIO库提供了访问底层网络接口的能力,从而可以获取包括...

    jsp+servlet+eclipse内部管理系统

    【标题】"jsp+servlet+eclipse内部管理系统"是一个典型的Web应用程序开发实例,它结合了三种核心技术:JavaServer Pages(JSP)、Servlet和Eclipse IDE,用于构建内网的管理平台。这个系统针对初学者设计,旨在提供...

    tomcat+Android简单音乐播放器

    Tomcat是Java Servlet和JavaServer Pages(JSP)的开源容器,它是Java Web应用的标准部署平台。Tomcat的轻量级特性使得它成为小型项目或测试环境的理想选择。在此项目中,Tomcat负责接收客户端的请求,处理数据,并...

    单点登录源码

    各个子系统前台thymeleaf模板,前端资源模块,使用nginx代理,实现动静分离。 &gt; zheng-upms 本系统是基于RBAC授权和基于用户授权的细粒度权限控制通用平台,并提供单点登录、会话管理和日志管理。接入的系统可自由...

    货物管理系统

    在这个货物管理系统中,使用了【JSP(JavaServer Pages)】和【Servlet】技术。JSP是Java的一种动态网页技术,它允许开发者将HTML代码与Java代码相结合,生成动态网页内容。在货物管理系统中,JSP可能用于创建用户...

    tomcat10 zip压缩版及文档.zip

    7. **JSP与Servlet**:Tomcat作为Servlet和JSP容器,允许开发者使用这些技术创建动态web应用。Jasper组件负责JSP的编译和执行。 8. **端口配置**:Tomcat默认监听8080端口,但用户可以通过修改`server.xml`中的`...

    大学毕业论文-—基于javaweb的在线考试系统的设计与实现.doc

    * Java Web应用开发需要使用Java Servlet、Java Server Pages(JSP)和JavaBeans等技术。 * Java Web应用开发的优点包括跨平台、安全、可移植性强等。 知识点2:在线模拟考试系统 * 在线模拟考试系统是指通过...

    Developing_Intranet_Applications_With_Java.rar_Java ebook_intran

    《开发企业内网应用:Java实战》是一本深入探讨如何使用Java技术构建高效、安全的内网应用程序的专业书籍。本书的核心目标是帮助开发者理解和掌握在企业内部网络环境中使用Java进行应用开发的关键技术和最佳实践。 ...

    tomcat10 windows安装版.zip

    Tomcat是一款开源的Java Servlet容器,主要用于运行Java Web应用程序,包括JSP和Servlet。它是Apache软件基金会Jakarta项目的一部分,因其轻量级、高效和稳定性而广受欢迎。 【描述】"最新Windows安装版本"意味着这...

    javaweb做接口中转服务

    Java Web是Java平台上的一个开发Web应用程序的规范集合,包括Servlet、JSP、JavaServer Faces等技术。Spring MVC是Spring框架的一个模块,用于构建基于模型-视图-控制器(MVC)模式的Web应用。它简化了开发过程,...

    tomcat-redis依赖jar包

    在Java Web开发中,Tomcat是一个广泛使用的应用服务器,它主要负责运行Servlet和JSP应用程序。Redis则是一种高性能的键值存储系统,常用于数据缓存、消息队列等场景。将Tomcat与Redis结合使用,可以提升Web应用的...

    海康威视Java2017-11开发包web版,内网亲测可用。

    Java是一种广泛使用的面向对象的编程语言,其JSP(Java Server Pages)和Servlet技术常用于构建动态Web应用程序。在这个开发包中,Java被用来创建与海康威视设备通信的接口,使开发者可以编写Web应用来远程访问和...

    tomcat server.xml 配置

    如果希望在浏览器地址栏中输入域名或IP地址时省略端口号,需要将端口设置为80。 ```xml &lt;Connector protocol="HTTP/1.1" port="80" ... /&gt; ``` 同时,还需要在操作系统级别进行相应的端口转发设置。 ##### 绑定多...

    eclipse neon添加tomcat插件

    Eclipse Neon是一款强大的Java开发集成环境,而Tomcat是一款广泛使用的开源Web服务器和Servlet容器。在Eclipse中添加Tomcat插件,可以让开发者方便地在IDE内管理、部署和调试基于Java Servlet和JSP的应用程序。本文...

    java程序员通向架构师的道路

    App Server运行Java应用程序,处理动态请求,提供Servlet、JSP等服务。将动态处理与静态内容分离,既保证了安全性,又便于扩展和维护。 3. **DB Server**:如Oracle,用于存储和管理数据,通常使用特定的数据库连接...

    人力资源管理系统外文翻译.doc

    本文所提及的基于Internet/Intranet的人力资源管理系统,是以互联网为载体,内网为支撑的人力资源管理解决方案。这样的系统不仅提高了工作效率,还为人力资源管理提供了数据支持,从而推动了企业效率的整体提升。 ...

    cas_client_1[1].0__2.0_proxy_DEMO.rar_网络编程_Java_

    其次,关于代理服务器(proxy)的配置,这在某些情况下,如内网应用对外提供服务时非常有用。在DEMO中,你可能能看到如何设置CAS代理票证(Proxy Granting Ticket, PGT)的流程,这允许受信任的应用程序代表用户获取...

    四川省企业自备电厂在线监测系统及其数据处理与分析解决方案.pdf

    由于有Sun(现Oracle)的支持,Servlet和JSP规范总能在Tomcat中得到体现,确保了技术的先进性和前瞻性。 在数据处理和分析方面,系统采用了集成的数据处理与分析解决方案,利用先进的算法和模型对采集到的实时数据...

    JAVA 企业通讯管理系统 完整代码

    开发者可能采用了Java EE(企业版)平台,包括Servlet、JSP、EJB等技术,来构建服务器端逻辑,处理用户请求并返回响应。 其次,企业通讯管理系统的核心功能包括: 1. **即时通讯**:系统可能通过自定义的协议或者...

    系统集成项目工程师知识点精简

    - **云计算**:一种通过网络提供计算资源和服务的模式,用户可以通过互联网获取所需的计算能力、存储空间和其他服务。 - **大数据**:指的是无法用现有的软件工具提取、管理和处理的大规模数据集。大数据技术的...

Global site tag (gtag.js) - Google Analytics