`
wangyi2200
  • 浏览: 3187 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

通过apache访问Tomcat,session丢失的问题

阅读更多
apache版本2.2
httpd.conf配置如下:
<VirtualHost *:80>
ServerAdmin webmaster@yourdomain.com
DocumentRoot  D:\work\tellu
ServerName www.tellu.net
ErrorLog D:/error2_log
TransferLog D:/access2_log
ProxyPass /page/ !
ProxyPass /static/ !
ProxyPass /adimage/ !
ProxyPass /swf/ !
ProxyPass / ajp://192.168.3.56:8009/tellu/ smax=5 max=20 ttl=120 retry=300
proxyPassReverse / ajp://192.168.3.56:8009/tellu/
</VirtualHost>
以上配置的效果是当访问www.tellu.net这个域名的时候转入ajp://192.168.3.56:8009/tellu/,也就是tomcat的url,可以访问相应的jsp
如果访问www.tellu.net/page/(或者:/static/,/adimage/,/swf)的时候会访问本机的D:\work\tellu\下的对应目录下的静态资源
均测试通过
当访问动态资源时,每次访问会创建一个单独的sessionid,以下是我对1个jsp的连续2次刷新:
DEBUG  New session created, sessionId : E94F5F9E1A581A57590B491AC45064E8
- New session created, sessionId : 1D3F7EA6DC6CCA458C3CF5C7C5B408A6
关掉apache,光用tomcat访问不存在这个问题,应该是对apache映射的原理理解不够深刻.


补充:
此问题已解决,配置上出了一点问题,导致用户每次访问都重新访问tomcat,session自然不同:
修改httpd.conf:
<VirtualHost *:80>
ServerAdmin webmaster@yourdomain.com
DocumentRoot  D:\work\tellu
ServerName www.tellu.net
ErrorLog D:/error2_log
TransferLog D:/access2_log
ProxyPass /page/ !
ProxyPass /static/ !
ProxyPass /adimage/ !
ProxyPass /swf/ !
ProxyPass / ajp://www.tellu.net:8009/ smax=5 max=20 ttl=120 retry=300
</VirtualHost>
然后在tomcat的server.xml中修改虚拟主机如下:
<Host name="www.tellu.net"  appBase="D:\system\Tomcat 6.0"  unpackWARs="true" autoDeploy="true"  xmlValidation="false" xmlNamespaceAware="false">       
        <Context path="" docBase="webapps\tellu" reloadable="true" />
      </Host>

分享到:
评论
3 楼 wangyi2200 2009-07-20  
yzjiang8888 写道
请问修改了tomcat的哪个配置?
apache的关键修改是什么?

tomcat: conf/server.xml
apache: conf/httpd.conf
就这2个文件配置一下就可以了
2 楼 yzjiang8888 2009-07-20  
请问修改了tomcat的哪个配置?
apache的关键修改是什么?
1 楼 xieboxin 2009-07-10  
用中心缓存保存session吧,这样解决了^

相关推荐

    Apache+tomcat集群环境配置

    Apache作为前端服务器,可以通过负载均衡技术将用户请求分发到多个后端的Tomcat实例上,实现请求的分担,同时通过session同步,保证用户会话的连续性。以下是对"Apache+mod_jk+Tomcat集群环境配置"的详细解析。 **1...

    TOMCAT+APACHE集成以及session复制

    在IT行业中,尤其是在Web服务器配置和优化领域,TOMCAT和APACHE的集成以及session复制是两个关键概念。本文将详细讲解这两个主题,并提供一个基于实际操作的demo概述。 首先,TOMCAT是一款流行的开源Java Servlet...

    apache 和 tomcat 集成、集群

    可以通过session复制,即所有服务器间共享session信息,确保用户在不同服务器间的切换不会丢失状态。 4. **共享存储**: 为了实现session复制,可能需要共享存储(如内存缓存或数据库)来存储session数据,以确保...

    apache+tomcat+memcached

    总结:Apache+Tomcat+Memcached集群的搭建,旨在优化Web服务性能,通过Apache处理静态内容,Tomcat处理动态请求,而Memcached则提供Session管理,确保在分布式环境中用户状态的一致性。这种架构适用于高并发、高访问...

    tomcat redis session.rar

    :“Tomcat集群Nginx使用Redis保证Session同步”这一场景中,通常是因为在多台Tomcat服务器组成的集群中,每个服务器各自维护独立的Session,当用户在集群中的不同服务器之间切换时,可能会导致Session丢失或冲突。...

    tomcat-session共享

    标题“tomcat-session共享”和描述中提到的问题,主要是指如何在多台Tomcat服务器之间以及通过Nginx进行Session的高效、安全共享。以下是对这个主题的详细阐述: **1. Session的概念** Session是Web应用程序中用于...

    Apache+Tomcat实现负载均衡及集群(session同步)--五、session同步(3)使用memcache

    通过以上步骤,你就可以利用memcache实现Apache+Tomcat的session同步,从而构建一个高效且具有高可用性的Web服务集群。需要注意的是,虽然memcache提供了一种简单的方法来处理session同步,但在大型系统中,你可能还...

    Tomcat7+Redis+Session 负载之后session 共享 tomcat jar包

    用户可能会被分配到不同的Tomcat实例上,由于Session信息存储在单个服务器的内存中,因此会导致用户在不同服务器间切换时Session丢失,从而引发登录状态失效的问题。 为了解决这个问题,我们可以利用Redis这个高效...

    Apache+Tomca8+Redis实现session共享tomcat8依赖jar.zip

    总的来说,通过Apache、Tomcat8和Redis的集成,我们可以实现高效且可靠的Session共享机制,这对于提高用户体验和维护分布式系统的稳定性至关重要。这个压缩包提供的资源和说明,可以帮助开发者快速搭建和配置这样一...

    tomcat实现session共享

    此外,为了保证数据安全,还可以配置Redis进行数据持久化,防止服务器重启导致session丢失。 总的来说,通过使用Tomcat和Redis,我们可以构建一个高效且可扩展的session共享方案,为大型Web应用提供稳定的服务。...

    tomcat-redis-session-manager

    此外,为了确保高可用性,可以考虑在Redis集群上运行`tomcat-redis-session-manager`,这样即使某个Redis节点故障,session数据也不会丢失,服务仍能正常运行。 总的来说,`tomcat-redis-session-manager`是应对...

    tomcat-redis-session-manager的jar包-包含Tomcat7和Tomcat8

    而且,由于数据存储在Redis中,即使服务器重启,session数据也能被保留,避免了传统session丢失的问题。 总结起来,Tomcat-Redis-Session-Manager通过整合Redis和Tomcat,实现了高效、可靠的session管理,特别适用...

    nginx+tomcat shiro实现多tomcat下session共享

    例如,Redis的数据备份和恢复策略,以及防止因网络问题导致的session丢失或重复。 7. **性能优化**: 可以通过设置合适的session过期时间、使用Redis的持久化机制以及监控Redis的性能,来优化session共享的效率和...

    Apache-Tomcat负载平衡配置方法

    通过在前端部署Apache服务器作为负载均衡器,可以将用户的请求智能地分发到后端的多个Tomcat实例上,实现请求处理的分散,避免单点故障,同时提高响应速度。 首先,负载平衡有两大目标:增加系统可用性和提高系统...

    tomcat-session同步所需jar.rar_session集群共享_tomcat session

    **Tomcat Session管理**:Tomcat提供了多种session管理策略,如`org.apache.catalina.ha.session.DeltaManager`和`org.apache.catalina.ha.session.JvmRouteBinderValve`,它们支持集群环境下的session复制。...

    tomcat session redis支持

    在Web应用中,session是用来存储用户状态的关键机制,而Tomcat作为常用的Java Servlet容器,通常会将session数据存储在内存中,这在大型高并发应用中可能会导致内存压力增大或session丢失的问题。为了解决这些问题,...

    apache+tomcat配置集群文档及安装资源包

    在Apache+Tomcat的集群配置中,Apache通常作为前端负载均衡器,通过mod_proxy模块将请求分发到后端的多个Tomcat实例上。 以下是配置Apache+Tomcat集群的主要步骤: 1. **安装Apache和Tomcat**:首先确保在所有...

    Apache+Tomcat负载均衡与集群配置详解

    - 创建一个简单的Web应用(如lbtest)放在每个Tomcat服务器的webapps目录下,通过访问应用来验证负载均衡是否正常工作。 这种配置完成后,Apache将根据预设的负载均衡策略,将用户请求智能地分发到不同的Tomcat...

Global site tag (gtag.js) - Google Analytics