zoukankan      html  css  js  c++  java
  • 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系统下 如果无法访问  注意看看是否是防火墙的原因

  • 相关阅读:
    1 python 基础
    php数据几行代码导出到excel(非插件)
    支付宝单笔转账demo (改配置直接用)
    require include 一个隐藏的用法:作用域。
    require include php5中最新区别,百度上好多错的。
    MySQL 普通注册插入优化。
    nginx 下开启pathinfo模式
    微信网页授权demo2
    事务处理不支持的可能程序外问题。
    php5.3中namespace的说明,帮助初次接触namespace的phper快速理解
  • 原文地址:https://www.cnblogs.com/javabigdata/p/7161980.html
Copyright © 2011-2022 走看看