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 ( $request_uri = "/" ) {
        rewrite "/" http://www.csdn.net/index.html break;
    }
    proxy_pass http://csdn-tomcat$request_uri;
  }
  # 301 redirect:
  location /blog/index.html {
    return 301 http://www.iteye.com$request_uri;
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

研究好半天,终于解决了。
首先假设首页上面是一个静态的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去处理。
但是上线的时候比较麻烦,分开上线。

——————— 本文来自 freewebsys 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/freewebsys/article/details/51277923?utm_source=copy

发表评论

电子邮件地址不会被公开。 必填项已用*标注