nginx 动静分离 以及 负载均衡配置

测试环境

系统版本:win7

Nginx版本:nginx-1.8.1 

Tomcat版本:tomcat-6.0.14

 

1动静分离配置

 Nginx.conf 中 server中
   server {
        listen       80;
        server_name  127.0.0.1;
          #访问链接是127.0.0.1/project开头的静态资源会在以下的目录下去找
	    location ~* ^/project/.*\.(gif|jpg|jpeg|png|js|css|html)$ {  
            root    D:/develop_software/apache-tomcat-6.0.14/webapps;  
        }  
       #其他静态资源会在nginx的html目录下去找
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|html)$ {  
            root    html;  
        } 
}

  

 2负载均衡配置

 首先开启两个tomcat,这里为了演示方便,只是在一台机器上开启两个tomcat,分别运行在

  80999099

  如下图所示

  

       

接下来配置nginx
 
  #user  nobody;
worker_processes  2; #nginx要开启的进程数 一般等于cpu的总核数 一般情况下开4个或8个就即可
#pid        logs/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    gzip  on;
    #一个server就是一个虚拟主机 运行在80端口 
 upstream  test {  #服务器集群名字   
      server    127.0.0.1:9099  weight=1 fail_timeout=30s;#服务器配置   weight是权重的意思,权重越大,分配的概率越大。  
      server    127.0.0.1:8099  weight=2 fail_timeout=30s; 
   }     

    server {
        listen       80;
        server_name  127.0.0.1;
		  location ~* ^/zybb2b/.*\.(gif|jpg|jpeg|png|js|css|html)$ {  
            root    D:/develop_software/apache-tomcat-8.0.9/webapps;  
        }  
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|html)$ {  
            root    html;  
        }  
		
        location / {
            #以下三行代码是为了得到客户端真实ip
            proxy_set_header Host  $host; 
            proxy_set_header X-Real-IP $remote_addr; 
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
            proxy_pass   http://test;
			proxy_redirect default;  
			index  index.html index.htm index.jsp;
			
        }

    }

}

  另外 关于nginx高可用的问题,使用负载均衡以后,nginx成了入口,如果一旦挂掉 网站就访问不了,所以我们需要保证应用不能存在单点问题。

       对高可用感兴趣的朋友可以看看这篇文章 nginx高可用配置

常见问题1?

开启nginx出现  “unknown directive "?     

应该是使用记事本或者某些文本打开器打开了nginx的配置文件,添加了几个bom字符。

解决方式是 使用写字本或者NotePad++打开 保存即可 或者另存为无bom utf8格式

常见问题2?

Linux系统下 如果无法访问  注意看看是否是防火墙的原因

 

posted on 2017-07-13 18:14  一只小蜗牛12138  阅读(151)  评论(0编辑  收藏  举报

导航