- 第①步:准备搭建环境,nginx和两个tomcat环境。如下图所示:
- 第②步:将tomcat的端口号修改,修改文件为
${tomcat}/conf/server.xml
文件;
要修改的地方有:
<!-- 第22行:Server下的port -->
<Server port="8005" shutdown="SHUTDOWN">
<!-- 第70行:Connector下的port和redirectPort -->
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<!-- 第90行:Connector下的port和redirectPort -->
<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />
</Server>
- 第③步:在nginx.conf文件中的
location /
添加proxy_pass
来设置代理,server_jiqun
配置集群
location / {
#root html;
#index index.html;
#proxy_pass http://localhost:8080;
proxy_pass http://server_jiqun;
}
upstream server_jiqun{
server 127.0.0.1:8080 weight=2;
server 127.0.0.1:8090 weight=4;
}
上述代码表示location代理server_jiqun集群,location通过nginx间接访问127.0.0.1:8080和127.0.0.1:8090两台服务器
session共享问题
- 解决方案一:只能在window下好使
- 修改两个地方:
- 1、修改tomcat的server.xml配置文件,在Engine标签下加入如下内容
- 2、修改项目的配置文件 web.xml中添加一个节点,为web-app根节点下。
<distributable/>
- 1、修改tomcat的server.xml配置文件,在Engine标签下加入如下内容
- 修改两个地方:
- 解决方案二:
- 可以将session的id放入redis中
- 解决方法三:
- 保证一个ip地址永远的访问一台web服务器,就不存在session共享问题了,我们可以在nginx的配置文件中
- upstream中添加 ip_hash