Nginx应用案例

一、日志的备份切割

ab -c 1 -n 10000 http://www.westos.org/index.html	#创建一个客户端请求10000次
du -sh access.log 			#查看日志大小
mv access.log `date +%F -d -1day`_access.log		#备份前一天日志为_access.log
nginx -s reopen				#在生成一个新的access.log

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、nginx平滑升级与版本退回
最好不要做软链接
1、平滑升级
安装低版本的nginx

/usr/local/nginx/sbin/nginx -v		#查看版本信息
rm -fr /usr/local/sbin				#删除软连接,没有/
cp nginx nginx.old					#备份启动脚本

在这里插入图片描述
在这里插入图片描述

根据老版本的编译选项对新版本进程编译,编译步骤为make

./configure --prefix=/usr/local/nginx/
make
cd /usr/local/nginx/sbin/
cp -f /usr/local/nginx/nginx-1.16.1/objs/nginx .

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
向原来的nginx的master进程发送信号,不再接受请求,新的nginx开启worrker进程接受新的请求

kill -USR2 4989(PID号)				#旧master不接受请求
ps -ef |grep nginx |grep -v grep
kill -WINCH 4989					#清除老的worker
/usr/local/nginx/sbin/nginx -v		#成功平滑升级

2、版本退回

cp -f nginx.old nginx
ps -ef |grep nginx |grep -v grep
kill -HUP 4989				#召回原master的worker
kill -USR2 7533				#新的master不接受请求
kill -WINCH 7533			#清除新的worker
/usr/local/nginx/sbin/nginx -v		#成功平滑升级

在这里插入图片描述
在这里插入图片描述
三、nginx限制用户访问

vim nginx.conf:
对同一个ip进行限制
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
#一秒只能请求一个
location /download{
        limit_conn addr 1;	#一次只能一个并发
	limit_rate 50k		#限制带宽,每秒最多50k
        }

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
四、nginx获取真实的客户端请求ip
server2代理
做反向代理

upstream westos{
        server 172.25.1.1:80;

}
server{

        listen 80;
        server_name www.westos.org;
location / {
        proxy_pass http://westos;
                }
        }
}

在这里插入图片描述
在这里插入图片描述

做真实客户端ip

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

server1真实服务
做真实客户端ip

set_real_ip_from 172.25.1.2;
real_ip_header X-Forwarded-For;
real_ip_recursive on;

在这里插入图片描述
server3客户端
均安装nginx。

vim /etc/hosts
curl www.westos.org

在这里插入图片描述
五、nginx:https的实现
在这里插入图片描述
在这里插入图片描述
六、nginx:rewrite规则
重写及重定向规则。
重定向:将网络请求重新定方向转到其他位置:当网页调整、重新转移新地址或扩展名的改变,就需要在内部进行输出重定向。

状态码301:永久性转移,旧资源不可用,尽量使用301。
状态码302:暂时性转移,旧地址资源还在
在这里插入图片描述

rewrite <regex> <replacement> [flag];
关键字     正则     替代内容      标记

flag:
last:本条规则匹配完成后,继续向下匹配新的locationURI规则
break:本条规则匹配完成后即终止
redirect:返回302临时重定向。浏览器地址会显示调转后的URI地址。
permanent:返回301永久重定向,浏览器地址会显示调转后的URI地址。

www.westos.org—https://ww.westos.org

server{
                listen 80;
                server_name  www.westos.org;
                rewrite ^/(.*)$ https://www.westos.org/$1;
}

在这里插入图片描述
在这里插入图片描述
#$1表示用户在这里输入的内容保留,只会重定向$1前面的东西。后加permanent表示永久重定向。

七、nginx:防盗
1、设置盗链
server1:

server {
        listen 80;
        server_name www.westos.org;
        location /{
                root /web;
        index index.html;
}
}

在这里插入图片描述
server2:

server{
        listen 80;
        server_name daolian.westos.org;
        charset utf_8;

location / {
        root /web;
        index index.html;
}
        }

在这里插入图片描述
2、设置防盗链规则

location ~* \.(gif|jpg|png|jpeg)${
        root /web;
        valid_referers none blocked www.westos.org;
                return 403;
}

在这里插入图片描述
在这里插入图片描述
3、防 盗后转移连接

server{
         listen 80;
         server_name bbs.westos.org;
        location /{
                root /bbs;
        index index.html;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值