一、前提
nginx: https
tomcat:http
java:springmvc
二、问题描述
通过https访问到nginx,通过nginx proxy_pass 到http的tomcat。
正常访问都正常,但是只要java redirect就跳转到http。
三、解决方案
proxy_pass http://10.0.1.107:8080;
proxy_set_header Host $host:$server_port;
proxy_redirect http:// https://;
实现流程:根据nginx的不同执行阶段,来完成Location http到https。
1. proxy_pass执行前,先设置了request head host 为https外网访问的域名+端口
2. proxy_pass执行后,tomcat结果返回response
3. proxy_redirect修改response中的location中的协议http为https外网访问的协议。
因为最近没有时间,就不排版了,调试这个问题已经浪费了不少时间。查了不少资料,这个算是准确的。我主要想记录一下nginx的执行阶段。
引用
http://blog.csdn.net/lindev/article/details/23952395
四、java redirect
这个主要是通过访问tomcat的请求head项来决定的,默认是http协议,域名是通过读取host地址,默认host中不包括访问端口。
分享到:
相关推荐
在初学Java Web开发时,理解页面间的登录跳转机制是非常关键的一部分,它涉及到用户交互、请求处理和响应管理。本文将深入探讨这个主题,帮助新手开发者更好地掌握这一核心技术。 一、HTTP请求与响应基础 Java Web...
Servlet 跳转可以分为 Redirect 跳转和 Forward 跳转两种,JSP 跳转也可以使用这两种方式,但是需要注意 JSP 的特殊性。了解 Servlet 跳转的几种情况,可以帮助开发者更好地控制程序的流程和数据传递。
本示例"java-web学习demo--最简单的servlet jsp跳转传值"主要展示了如何通过Servlet处理HTTP请求,并将数据传递到JSP页面进行展示。下面将详细讲解这个过程。 1. **Servlet**: Servlet是Java编程语言中实现服务器...
### 子窗口iframe跳转到父窗口的知识点详解 #### 一、背景介绍 在现代Web开发中,`iframe`(Inline Frame)是一种常见的技术,用于在当前网页中嵌入另一个网页或文档。通过`iframe`,开发者可以实现丰富的功能,如...
在Java Web中,主要有两种页面跳转方式:请求转发(Request Forward)和重定向(Redirect)。这两种方式有着不同的工作原理和适用场景。 **请求转发(Request Forward)** 请求转发是由服务器内部完成的,不会向...
Struts1.3是一个经典的Java Web框架,用于构建企业级应用程序。在Struts1.3中,页面跳转是常见的需求,它涉及到Action类、配置文件(struts-config.xml)以及JSP页面间的交互。本篇文章将深入探讨Struts1.3中的页面...
- **Servlet响应重定向(Redirect)**:使用`response.sendRedirect()`方法,这会导致浏览器发起一个新的HTTP请求。由于是新的请求,所以之前的请求信息(如POST数据)不会被传递,适合用于从不安全的页面(如登录...
Struts2是使用Java开发的Web应用程序框架,它提供了许多功能强大的特性来简化Web应用程序的开发。 在Struts2中,跳转到另一个工程的页面是通过Action和Result来实现的。 Action配置 在Struts2中,Action是一个核心...
Struts2是一个非常流行的Java Web框架,用于构建MVC(模型-视图-控制器)架构的应用程序。在Struts2中,路径跳转是应用程序中常见的操作,它涉及到请求转发和重定向。当遇到“Struts2中路径无法跳转的问题”时,这...
网站页面自动跳转是网页开发中的常见功能,用于在用户打开一个页面后,经过一段时间或者特定条件触发,自动转向另一个页面。这种技术在各种场景下都有应用,比如页面更新、错误处理、重定向等。本篇文章将深入探讨...
当 type 为 redirect-action 时,说明会跳转到第二个 action 的 url(客户端的 url 会改变)。redirect-action 处理完后重定向到一个 action,请求参数全部丢失,action 处理结果也全部丢失。 Redirect-action 需要...
SpringMVC是一个基于Java的Web应用框架,提供了多种方式来实现跳转。下面将详细介绍SpringMVC实现简单跳转方法的几种方式。 1. 传统方式跳转_请求转发 在SpringMVC中,我们可以使用传统的请求转发方式来实现跳转。...
本文详细介绍了Java后台重定向到另一个项目的方法,包括使用ModelAndView跳转、使用HttpServletResponse跳转和使用redirect返回String类型跳转三种方法,并且讨论了传参问题和实体类对象接收问题。
在J2EE(Java 2 Platform, Enterprise Edition)开发中,页面自动跳转是一个常见的需求,特别是在构建Web应用程序,如购物网站时。本项目“j2ee练习8实现页面自动跳转”旨在解决一个购物界面的跳转问题,最初存在...
总结,Java Servlet中的页面跳转主要分为`redirect`和`forward`两种方式,每种都有其特定的应用场景。`redirect`适用于需要改变URL或跳转到外部资源的情况,而`forward`则适用于保持URL不变且在同一个应用内进行页面...
通过理解HTTP协议、状态码和客户端库的使用,我们可以有效地解决登录页面自动跳转的问题,从而成功地使用Java作为客户端发送HTTP POST请求登录网站首页。在实践中,还需要注意安全性问题,比如使用HTTPS加密通信,...
Servlet是Java Web应用程序的核心组件之一,负责处理HTTP请求并生成响应。在Servlet中,有两种主要的跳转方式:`RequestDispatcher.forward()`和`ServletResponse.sendRedirect()`。这两种方法在处理客户端请求时有...
在给出的示例中,`java.lang.Thread`和`java.lang.ClassLoader`是可以被继承的,而`java.lang.Double`, `java.lang.Math`, `java.lang.Void`, `java.lang.Class`是不可被继承的。这是因为`Thread`和`ClassLoader`...
1. **服务器端跳转(Server-Side Redirect)**:在服务器端通过编程语言(如PHP、Java、ASP.NET等)实现。常见的方法有HTTP响应状态码(如301、302)、重定向函数或方法。服务器会告诉浏览器去请求另一个URL,浏览器...
- 在Java Web应用中,页面跳转通常有两种方式:重定向(Redirect)和转发(Forward)。 - **重定向**:客户端(浏览器)会收到一个新的HTTP响应,并被指示去访问新的URL。这意味着客户端会发送一个新的请求到...