Nginx教程

初始nginx(二)

本文主要是介绍初始nginx(二),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

负载均衡算法使用

轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务,如果后端某台服务器死机,自动剔除故障系统,使用户访问不受影响。

权重Weight

 upstream  backServer{

server 127.0.0.1:8080 weight=1;

server 127.0.0.1:8081 weight=2;

}

 

server {

        listen       80;

        server_name  www.your.com;

        location / {

    ### 指定上游服务器负载均衡服务器

 proxy_pass http://backServer;

            index  index.html index.htm;

        }

    }

IP绑定ip_hash

每个请求按访问IP的哈希结果分配,使来自同一个IP的访客固定访问一台后端服务器,并且可以有效解决动态网页存在的session共享问题。俗称IP绑定。

upstream  backServer{

    server 127.0.0.1:8080 ;

    server 127.0.0.1:8081 ;

    ip_hash;

}

 

server {

        listen       80;

        server_name  www.your.com;

        location / {

    ### 指定上游服务器负载均衡服务器

    proxy_pass http://backServer;

            index  index.html index.htm;

        }

    }

Nginx配置故障转移

当上游服务器(我们真实访问的服务器),一旦访问时出现故障或者是没有及时相应的话,nginx可以帮助我们直接轮训到下一台服务器,进而保证服务器的高可用。

Nginx配置代码:

server {

        listen       80;

        server_name  www.your.com;

        location / {

    ### 指定上游服务器负载均衡服务器

    proxy_pass http://backServer;

###nginx与上游服务器(真实访问的服务器)超时时间 后端服务器连接的超时时间_发起握手等候响应超时时间

   proxy_connect_timeout 1s;

###nginx发送给上游服务器(真实访问的服务器)超时时间

   proxy_send_timeout 1s;

### nginx接受上游服务器(真实访问的服务器)超时时间

  proxy_read_timeout 1s;

  index  index.html index.htm;

        }

    }

nginx rewrite 

Nginx提供的全局变量或自己设置的变量,结合正则表达式和标志位实现url重写以及重定向

Rewrite全局变量

flag标记可以用以下几种格式:

last - 基本上都用这个Flag。

break - 中止Rewirte,不在继续匹配

redirect - 返回临时重定向的HTTP状态302

permanent - 返回永久重定向的HTTP状态301 

Nginx Rewrite如何301跳转 如:将me.cn 跳转到www.your.cn

 

server {

    listen       80;

    server_name   www.your.cn  me.cn;

    if ($host != 'www.your.cn' ) { 

        rewrite ^/(.*)$ http://www.your.cn/$1 permanent; 

    

}

判断IP地址来源

 

  ## 如果访问的ip地址为192.168.5.165,则返回403

     if  ($remote_addr = 192.168.5.166) {  

         return 403;  

     }  

 

限制浏览器访问

## 不允许谷歌浏览器访问 如果是谷歌浏览器返回500

 if ($http_user_agent ~ Chrome) {   

         return 500;  

        }

 

这篇关于初始nginx(二)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!