这篇文章主要介绍了nginx 解决首页跳转问题详解的相关资料,需要的朋友可以参考下
nginx和tomcat负载均衡
比如 www.csdn.NET 网站后面有 2个tomcat。
配置负载均衡:
upstream csdn-tomcat{ server 192.168.100.101:8080; server 192.168.100.102:8080;}server { listen 80; server_name www.csdn.net csdn.net; index index.html; location / { if (
r
e
q
u
e
s
t
u
r
i
=
"
/
"
)
r
e
w
r
i
t
e
"
/
"
h
t
t
p
:
/
/
w
w
w
.
c
s
d
n
.
n
e
t
/
i
n
d
e
x
.
h
t
m
l
b
r
e
a
k
;
p
r
o
x
y
p
a
s
s
h
t
t
p
:
/
/
c
s
d
n
−
t
o
m
c
a
t
request_uri = "/" ) { rewrite "/" http://www.csdn.net/index.html break; } proxy_pass http://csdn-tomcat
requesturi="/")rewrite"/"http://www.csdn.net/index.htmlbreak;proxypasshttp://csdn−tomcatrequest_uri; } # 301 redirect: location /blog/index.html { return 301 http://www.iteye.com$request_uri; }}
研究好半天,终于解决了。
首先假设首页上面是一个静态的html。 百度收录批量查询
当用户没有直接输入 www.csdn.Net的时候进行 301 跳转。
引导用户到 www.csdn.net/index.html 首页。
其他动态请求打到tomcat上面。
这样的在nginx上面直接做了301 跳转。
这样解决的是问题是由于tomcat 是用spring做的。
后缀成.html了,没有办法区分tomcat 和 普通html了。
要是tomcat 的后缀成.do就好办了。
主要是为了减轻 tomcat的压力。将html css image 都交给nginx去处理。
但是上线的时候比较麻烦,分开上线。