tomcat1:192.168.1.11
tomcat2:192.168.1.155
nginx:192.168.1.155
静态分离:192.168.1.155
nginx:
location / {
root /www/webapps/;
index index.html index.htm index.jsp;
}
location ~* \.(jsp|do)$ {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.155:8080;
}
1、给/www/webapps/目录下提供一个index.html文件
[root@RS1 webapps]# cat index.html
<h1>Test Page</h1>
2、将tomcat默认文件修改一下
[root@RS1 webapps]# cd /usr/local/tomcat7/webapps/ROOT/
[root@RS1 ROOT]# ls
asf-logo.png bg-middle.png bg-upper.png index.jsp tomcat.css tomcat-power.gif
asf-logo-wide.gif bg-nav-item.png build.xml index.jsp.bak tomcat.gif tomcat.svg
bg-button.png bg-nav.png favicon.ico RELEASE-NOTES.txt tomcat.png WEB-INF
[root@RS1 ROOT]# cat index.jsp
<%@ page language="java" %>
<%@ page import="java.util.*" %>
<html>
<head>
<title>JSP Test Page</title>
</head>
<body>
<%
out.println("Hello world!");
%>
</body>
</html>
当浏览器访问http://192.168.1.155时,因为默认的是index.html于是访问的是静态页面
当浏览器访问http://192.168.1.155/index.jsp时,就会跳到192.168.1.155:8080端口的tomcat服务上
于是简单的动静分离就完成了
负载均衡:
tomcat1:192.168.1.11:8080
tomcat2:192.168.1.155:8080
nginx:192.168.1.155作为前端反代理
先做个测试,一一查看tomcat服务器的页面
访问192.168.1.11:8080
当访问192.168.1.155:8080时
于是开始配置nginx
在/etc/nginx/nginx.conf中配置upstream模块
upstream tomcat {
server 192.168.1.11:8080;
server 192.168.1.155:8080;
}
在/etc/nginx/conf.d/default.conf中配置如下操作
location / {
root /www/webapps/;
index index.html index.htm index.jsp;
}
location ~* \.(jsp|do)$ {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://tomcat;仅仅修改了这里
}
重启nginx服务
访问浏览器http://192.168.1.155/index.jsp
明显可以看出来这是192.168.1.11上的tomcat1上面的默认页面,由于静态页面都在tomcat1上,而本地nginx服务上并没有,所以出现的是这样的页面
然后刷新页面可以看到下面的页面