Window下搭建Tomcat+Nginx+Redis
来源:互联网 发布:淘宝上威力大的玩具枪 编辑:程序博客网 时间:2024/05/18 21:42
Window下搭建Tomcat+Nginx+Redis
一、部署环境说明
1, Win7、JDK1.7、Tomcat7(免安装版)、nginx-1.12.1、redis64-2.8.9
2, Java依赖包:
这个彼此间版本需要匹配,这个可以根据不同版本做不同调整。
二、JDK部署
JDK安装,设置环境变量,我的电脑-属性-高级系统设置-高级-环境变量。
创建环境变量JAVA_HOME: D:\Program Files\Java\jdk1.7.0_80
创建环境变量CLASSPATH: %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
环境变量Path中增加:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
三、Tomcat部署
1, 将Tomcat放在任意(没有中文路径)目录下,修改conf/server.xml的三个端口信息,如下:
三个端口要不一样而且没有被其他服务占用的端口即可。
2, 在webapps下创建了一个临时项目sso,sso下创建两个文件,一个index.jsp和clearSession.jsp,用于观察session的共享情况,代码如下:
3, 文件index.jsp内容:
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<h1>这个是第1个页面</h1><br>
<%
if (session.getAttribute("ss") == null) {
session.setAttribute("ss", "page1 session");
}
out.print("session ss is " + session.getAttribute("ss").toString()+"<br/>");
out.print("session id is " + session.getId());
%>
</body>
</html>
4, 文件clearSession.jsp内容:
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<h1>这个是第1个页面</h1><br>
<%
if (session.getAttribute("ss") != null) {
session.removeAttribute("ss");
}
%>
session is clear.
</body>
</html>
5, 运行该tomcat(双击bin下startup.bat),访问看是否正常。PS:如果运行tomcat遇到下列异常,是因为tomcat和操作系统一个32位一个64位不一致,暂时不用管。
6, 如果一起正常,将这个tomcat复制一份或者多份,我复制两份,共三个tomcat。
7, 将另外两个tomcat中的端口修改,我是改成8021|8020|8022和8031|8030|8032,同时将index.jsp下图标红处分别改成相应的2和3.
8, 三个tomcat都启动,分别确认三个页面访问正常,不同页面,不同sessionId。
四、Nginx部署
1,Window版Nginx的目录如下:
2,配置文件conf/nginx.conf,进行如下调整:
代码:
upstreamsso {
server localhost:8010;
server localhost:8020;
server localhost:8030;
}
location/sso {
index index.jsp;
proxy_pass http://sso;
client_max_body_size 100m;
proxy_set_headerHost $http_host;
proxy_set_headerX-Real-IP $remote_addr;
proxy_set_headerX-Forwarded-For $proxy_add_x_forwarded_for;
}
3,完成后双击“nginx.exe”,运行nginx,访问路径:127.0.0.1:800/sso会在三个tomcat下的页面之间调换,不同页面,不同sessionId。如下图所示。
五、Redis部署
1,Windows版Redis目录结构如下:
2,配置文件不做任何修改时,数据库是没有密码的,端口默认6379,运行redis-server.exe便启动数据库,出现下图就OK了。
六、Tomcat修改配置共享Session
1,找到Tomcat7下cong/context.xml文件,在</Context>结束前增加下列配置。
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" />
<Manager className="com.radiadesign.catalina.session.RedisSessionManager"
host="127.0.0.1"
port="6379"
database="3"
maxInactiveInterval="60" />
2,将之前准备好的三个Java依赖包分别复制到三个Tomcat目录的lib下,否则Tomcat启动会报错的。
3,重启所有Tomcat,在访问800服务,就会发现sessionId始终是一个,session的内容共享了。
- Window下搭建Tomcat+Nginx+Redis
- Linux下搭建Tomcat+Nginx+Redis
- window下搭建Nginx
- tomcat+redis+nginx集群搭建
- window下搭建nginx服务器
- window 下搭建redis扩展
- CentOS下搭建Nginx+Tomcat
- tomcat6+nginx+redis搭建tomcat集群环境
- Nginx+Tomcat+Redis+NFS搭建服务器集群
- nginx+tomcat+redis集群环境搭建
- nginx+tomcat+redis+mysql搭建与优化
- nginx+tomcat+redis集群环境搭建
- Nginx+Tomcat+Redis搭建共享SESSION集群
- Nginx+Tomcat+Redis搭建SESSION集群
- window 下 nginx php 环境搭建
- window下zookeeper+tomcat+solr搭建solrCloud
- windows下搭建nginx+php+redis环境
- windows下Nginx+memcached+Tomcat集群搭建
- 最新Banner简单实用 1.4.10
- PDF拦截器
- asp.net使用session丢失问题的解决办法
- 陌生的NSUserDefaults
- Android 自定义控件
- Window下搭建Tomcat+Nginx+Redis
- 第一节.Python变量与简单数据类型
- 字符串时间比较
- 我的Linux学习之路(六、安装Redis)
- html之Bootstrap导航条去除圆角
- UVA127—加油学习努力向前
- 视图
- AMD-SDK的学习[4]--BinomialOption
- 简单实现WaveSwipeRefreshLayout+RecyclerView的上拉加载下拉刷新的功能