- 浏览: 2552827 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
nation:
你好,在部署Mesos+Spark的运行环境时,出现一个现象, ...
Spark(4)Deal with Mesos -
sillycat:
AMAZON Relatedhttps://www.godad ...
AMAZON API Gateway(2)Client Side SSL with NGINX -
sillycat:
sudo usermod -aG docker ec2-use ...
Docker and VirtualBox(1)Set up Shared Disk for Virtual Box -
sillycat:
Every Half an Hour30 * * * * /u ...
Build Home NAS(3)Data Redundancy -
sillycat:
3 List the Cron Job I Have>c ...
Build Home NAS(3)Data Redundancy
apache反向代理问题
今天早晨一个兄弟晕倒了apache2.2和tomcat6.0.18的反向代理问题,session保持不住,刷新页面的时候session不断的被创建。
写了个简单的工程做测试。这个简单工程从朋友那里收到的。他喜欢用servlet。。。。汗
web.xml的配置:
<servlet>
<description></description>
<display-name>CreateServlet</display-name>
<servlet-name>CreateServlet</servlet-name>
<servlet-class>com.temp.CreateServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CreateServlet</servlet-name>
<url-pattern>/CreateServlet</url-pattern>
</servlet-mapping>
<servlet>
<description></description>
<display-name>TempServlet</display-name>
<servlet-name>TempServlet</servlet-name>
<servlet-class>com.temp.TempServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TempServlet</servlet-name>
<url-pattern>/TempServlet</url-pattern>
</servlet-mapping>
两个servlet的代码,CreateServlet.java:
package com.temp;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class CreateServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public CreateServlet() {
super();
}
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession(false);
// 不创建,看是否有session
if (session == null) {
// 没有才创建
session = request.getSession(true);
}
session.setAttribute("username", "aaaaaaa");
System.out.println(session.getId());
response.sendRedirect("TempServlet");
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
TempServlet.java
package com.temp;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class TempServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public TempServlet() {
super();
}
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession(false);
// 坚决不创建session
System.out.println(session.getAttribute("username"));
System.out.println(session.getId());
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
访问index.jsp页面
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<a href="CreateServlet">aaa</a>
</body>
</html>
apache的反向代理配置如下,首先打开#module的几个开关
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
不知道多开没有,上次配置了2.2上的loadbalance的。
最下方他配置的
ProxyPass /temp http://localhost:8080/Temp
ProxyPassReverse /temp http://localhost:8080/Temp
访问http://localhost/temp后,不断刷新页面,出现了sessionId打印每次都不一致的问题。
后来修改了配置,改为
ProxyPass /temp http://localhost:8080/temp
ProxyPassReverse /temp http://localhost:8080/temp
再次访问,不断刷新页面,session保持住了,sessionId每次都一致。
看来这个大小写还是比较重要:)
所谓反向代理,可能是要求这个前面的/path后后面的/path是要保持一致的? 不是很确信。注意一下这个问题,以后再查查资料看。
今天早晨一个兄弟晕倒了apache2.2和tomcat6.0.18的反向代理问题,session保持不住,刷新页面的时候session不断的被创建。
写了个简单的工程做测试。这个简单工程从朋友那里收到的。他喜欢用servlet。。。。汗
web.xml的配置:
<servlet>
<description></description>
<display-name>CreateServlet</display-name>
<servlet-name>CreateServlet</servlet-name>
<servlet-class>com.temp.CreateServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CreateServlet</servlet-name>
<url-pattern>/CreateServlet</url-pattern>
</servlet-mapping>
<servlet>
<description></description>
<display-name>TempServlet</display-name>
<servlet-name>TempServlet</servlet-name>
<servlet-class>com.temp.TempServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TempServlet</servlet-name>
<url-pattern>/TempServlet</url-pattern>
</servlet-mapping>
两个servlet的代码,CreateServlet.java:
package com.temp;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class CreateServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public CreateServlet() {
super();
}
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession(false);
// 不创建,看是否有session
if (session == null) {
// 没有才创建
session = request.getSession(true);
}
session.setAttribute("username", "aaaaaaa");
System.out.println(session.getId());
response.sendRedirect("TempServlet");
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
TempServlet.java
package com.temp;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class TempServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public TempServlet() {
super();
}
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession(false);
// 坚决不创建session
System.out.println(session.getAttribute("username"));
System.out.println(session.getId());
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
访问index.jsp页面
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<a href="CreateServlet">aaa</a>
</body>
</html>
apache的反向代理配置如下,首先打开#module的几个开关
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
不知道多开没有,上次配置了2.2上的loadbalance的。
最下方他配置的
ProxyPass /temp http://localhost:8080/Temp
ProxyPassReverse /temp http://localhost:8080/Temp
访问http://localhost/temp后,不断刷新页面,出现了sessionId打印每次都不一致的问题。
后来修改了配置,改为
ProxyPass /temp http://localhost:8080/temp
ProxyPassReverse /temp http://localhost:8080/temp
再次访问,不断刷新页面,session保持住了,sessionId每次都一致。
看来这个大小写还是比较重要:)
所谓反向代理,可能是要求这个前面的/path后后面的/path是要保持一致的? 不是很确信。注意一下这个问题,以后再查查资料看。
发表评论
-
Update Site will come soon
2021-06-02 04:10 1679I am still keep notes my tech n ... -
Portainer 2020(4)Deploy Nginx and Others
2020-03-20 12:06 431Portainer 2020(4)Deploy Nginx a ... -
Private Registry 2020(1)No auth in registry Nginx AUTH for UI
2020-03-18 00:56 436Private Registry 2020(1)No auth ... -
Docker Compose 2020(1)Installation and Basic
2020-03-15 08:10 374Docker Compose 2020(1)Installat ... -
VPN Server 2020(2)Docker on CentOS in Ubuntu
2020-03-02 08:04 456VPN Server 2020(2)Docker on Cen ... -
Nginx Deal with OPTIONS in HTTP Protocol
2020-02-15 01:33 356Nginx Deal with OPTIONS in HTTP ... -
PDF to HTML 2020(1)pdftohtml Linux tool or PDFBox
2020-01-29 07:37 409PDF to HTML 2020(1)pdftohtml Li ... -
Elasticsearch Cluster 2019(2)Kibana Issue or Upgrade
2020-01-12 03:25 721Elasticsearch Cluster 2019(2)Ki ... -
Spark Streaming 2020(1)Investigation
2020-01-08 07:19 295Spark Streaming 2020(1)Investig ... -
Hadoop Docker 2019 Version 3.2.1
2019-12-10 07:39 295Hadoop Docker 2019 Version 3.2. ... -
MongoDB 2019(3)Security and Auth
2019-11-16 06:48 241MongoDB 2019(3)Security and Aut ... -
MongoDB 2019(1)Install 4.2.1 Single and Cluster
2019-11-11 05:07 294MongoDB 2019(1) Follow this ht ... -
Monitor Tool 2019(1)Monit Installation and Usage
2019-10-17 08:22 325Monitor Tool 2019(1)Monit Insta ... -
Ansible 2019(1)Introduction and Installation on Ubuntu and CentOS
2019-10-12 06:15 312Ansible 2019(1)Introduction and ... -
Timezone and Time on All Servers and Docker Containers
2019-10-10 11:18 332Timezone and Time on All Server ... -
Kafka Cluster 2019(6) 3 Nodes Cluster on CentOS7
2019-10-05 23:28 283Kafka Cluster 2019(6) 3 Nodes C ... -
K8S Helm(1)Understand YAML and Kubectl Pod and Deployment
2019-10-01 01:21 326K8S Helm(1)Understand YAML and ... -
Rancher and k8s 2019(5)Private Registry
2019-09-27 03:25 362Rancher and k8s 2019(5)Private ... -
Jenkins 2019 Cluster(1)Version 2.194
2019-09-12 02:53 444Jenkins 2019 Cluster(1)Version ... -
Redis Cluster 2019(3)Redis Cluster on CentOS
2019-08-17 04:07 373Redis Cluster 2019(3)Redis Clus ...
相关推荐
反向代理反向代理反向代理反向代理反向代理反向代理反向代理反向代理反向代理
### Apache反向代理与负载均衡深入解析 #### 引言 Apache是一款广泛使用的Web服务器软件,不仅能够处理静态页面,还支持动态内容处理,并具备多种高级功能,如反向代理和负载均衡。本文将深入探讨Apache反向代理与...
Apache反向代理是一种网络服务器配置技术,用于将客户端请求转发到后端服务器集群,从而实现负载均衡。在高流量网站或应用中,反向代理能够有效地分发流量,提高服务的稳定性和响应速度,同时也提供了更好的可扩展性...
Apache反向代理
linux apache反向代理配置,写的有点乱,但是可以用,里面有说明文档 先弄 apache和tomcat整合 把80端口给apache 举例 tomcatA 8080 tomcatB 8081 在apache的httpd.conf里写反向代理,用户名指向tomcat的端口,具体...
Apache负载均衡和反向代理配置文件开启的模块及代码配置方法。。。。。。。。。。。。。。。。。。。
介绍如何使用apache进行反向代理的配置,以及配置中遇到的一些问题如何解决
Linux 下安装 Apache 及反向代理配置完整过程 Linux 操作系统下安装 Apache 服务器是一件复杂的任务,需要逐步完成多个步骤。本文将详细介绍 Linux 下安装 Apache 及反向代理配置的完整过程。 安装 Apache 安装 ...
以上就是Apache反向代理WebLogic的基本步骤和关键知识点,通过这种方式,你可以构建一个高效、安全的Web应用架构。在实际部署中,还需要考虑更多的细节,如SSL证书配置、安全策略、性能调优等。
windows下配置Apache双向认证和反向代理(Apache+配置文档)
apache tomcat 反向代理,http502错误,百度搜的解决不了问题 a.com 可以访问,www.a.com 无法访问http502错误
### 使用Apache配置反向代理服务器 #### 一、反向代理的基本概念 反向代理(Reverse Proxy)是一种网络架构模式,其中代理服务器接收来自互联网的请求,并将其转发给内部网络中的真实服务器。处理完请求后,代理...
### Apache反向代理知识点详解 #### 一、测试环境与网络结构 在开始之前,我们需要了解测试环境的具体配置。本文采用的是Redhat Linux 7.2操作系统,搭配Apache 1.3.24版本,假设公司的域名为company.com。网络...
【IIS与Apache反向代理】是指在一台服务器上,结合使用Microsoft的Internet Information Services (IIS) 和Apache HTTP Server,实现两者之间的协同工作,通过反向代理技术将请求分发到不同的服务环境中。...
### Apache反向代理及负载均衡部署详解 #### 一、Apache与IIS的反向代理和负载均衡背景 随着互联网应用的不断扩展和技术的发展,如何有效地处理大量的并发请求成为了一个重要的问题。在这种背景下,反向代理和负载...
【Apache+SSL安全反向代理配置案例】 Apache作为一款广泛应用的开源HTTP服务器,常常被用于构建网站服务。SSL(Secure Socket Layer)则是提供网络安全传输的一种协议,常用于加密通信,确保数据在传输过程中不被...