nginx基本概念(二)

本文详细介绍了Nginx的负载均衡配置,包括轮询和IP绑定两种算法,以及如何设置故障转移以确保高可用性。同时,还探讨了Nginx的rewrite规则,讲解了flag标记的使用,如last、break、redirect和permanent,以及如何实现301跳转和限制特定IP或浏览器的访问。通过这些配置,可以提升服务器性能并实现精细化的流量管理。
摘要由CSDN通过智能技术生成

目录

负载均衡算法使用 

Nginx配置故障转移

nginx rewrite 

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


负载均衡算法使用 

轮询(默认)

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

权重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全局变量

nginx的rewrite规则就是使用正则匹配请求的url,然后根据定义的规则进行重写和改变,需ngx_http_rewrite_module模块来支持url重写功能,该模块是标准模块,默认已经安装。

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;  

        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知始行末

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值