Nginx对代理HTTP资源的限制访问
为了限制连接的数量,首先,使用指令来定义密钥并设置共享内存区域的参数(工作进程将使用该区域来共享键值的计数器)。作为第一个参数,指定作为关键字计算的表达式。在第二个参数区域中,指定区域的名称及其大小。
其次,使用指令在一个位置、一个虚拟服务器或整个HTTP上下文中应用该限制。将共享内存区域的名称指定为第一个参数,并将每个密钥的允许连接的数量作为第二个参数。
测试:当访问该内容并发数为1时
全部访问成功
测试:当访问该内容并发数为10时
只有一次访问成功,其他都是503报错
为了限制请求率,首先,使指令设置密钥和共享内存区域来保持计数器。
一旦定义了共享内存区域,在虚拟服务器或位置(或者如果需要的话,在全局上)使用指令来限制请求率:
限制每个连接的带宽,使用指令:
测试:在带宽为50K.速率为1r/s的情况下下载文件
nginx.conf的内容如下:
从server1下载,速率受限
当顺序颠倒,所有主机都被限制访问
因为当deny在前所有的请求都被拒绝系统读不到下面的一行allow内容
当allow在前deny在后,allow的信息已经被系统读取过了然后才去读取的deny
Expires是Web服务器响应消息头字段,在响应http请求时告诉浏览器在过期时间前浏览器可以直接从浏览器缓存取数据,而无需再次请求
在客户端访问图片:
在浏览器访问:出现乱码
应对策略:
访问静态数据不记录日志:
要求:每天的24点备份日至。
首先编写备份日志的脚本:
加入定时任务中:
执行脚本:
在做防盗链之前我们先来看看什么时盗链:
盗链是指服务提供商自己不提供服务的内容,自己的网站上向用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不提供资源或提供很少的资源,雅思周末班而真正的服务提供商却得不到任何的收益。
盗链的模拟:
在客户端www.westos.org指向的是server1,172.25.7.1
测试:http://172.25.7.2/
server2没有此图片通过盗链而让客户端可获取到此图片
防止盗链:
WEB应用防火墙通过实现URL级别的访问控制,对客户端请求进行检测,如果发现图片、文件等资源信息的HTTP请求来自于其它网站,则阻止盗链请求,节省因盗用资源链接而消耗的带宽和性能。
当访问1的图片时直接定位至bbs.westos.org防止图片被盗链
再次访问172.25.7.2时:
此图片是我放入bbs的默认发布目录里的
Nginx对代理HTTP资源的限制访问的更多相关文章
- Nginx反向代理+Tomcat+Springmvc获取用户访问ip
Nginx+Tomcat+Springmvc获取用户访问ip 1.Nginx反向代理 修改Nginx配置文件 location / { ***********之前代码*******; proxy_se ...
- nginx反向代理批量实现https协议访问
我们进入大多数HTTPS网站ie浏览器都会给出相关提醒了,但我配置了一台HTTPS代理机器发现css与js都加载不了,这个有朋友说是https页面,如果加载http协议的内容,会被认为页面不安全,所以 ...
- nginx反向代理、根据浏览器分离访问
环境根据http://www.cnblogs.com/zzzhfo/p/6032095.html配置 修改LB的/usr/local/nginx/conf/nginx.conf upstream st ...
- nginx 代理静态资源报 403
用tomcat跑了一个上传服务,文件上传到指定nginx的html目录,用nginx来代理静态资源,结果上传能够成功,访问却报403. 解决办法,将html的拥有者改成nobody: chown -R ...
- nginx配置静态资源与动态访问分离【转】
在前面的博客中<说说 NGINX 的配置及优化>的 2.5 小节里面,提到 location 模块是 nginx 中用的最多的,也是最重要的模块,负载均衡.反向代理.虚拟域名等都与它相关. ...
- Linux 笔记 - 第二十章 配置 Nginx 反向代理和负载均衡
一.简介 由于 Nginx 的反向代理和负载均衡功能经常被提及,所以将这两个功能单独提出来进行讲解. Nginx 其实仅仅是作为 Nginx Proxy 反向代理使用的,因为这个反向代理功能表现的效果 ...
- linux运维、架构之路-Nginx反向代理
一. Nginx负载均衡和反向代理知识 1.集群概念 一堆服务器合作做同一件事,这些机器可能需要整个技术团队架构.设计和统一协调管理,这些机器可以分布在一个机房,也可以分布在全国各个地区的多个机房 ...
- 实战 | 一文带你读懂Nginx反向代理
一个执着于技术的公众号 前言 在前面的章节中,我们已经学习了nginx基础知识: 给小白的 Nginx 10分钟入门指南 Nginx编译安装及常用命令 完全卸载nginx的详细步骤 Nginx 配置文 ...
- 使用nginx反向代理处理前后端跨域访问
本文主要解决:使用nginx反向代理处理前后端跨域访问的问题 1.何为跨域访问? 以下类型为跨域访问 1)不同域名间访问 www.zuiyoujie.com和www.baidu.com 2)同域名不同 ...
随机推荐
- intouch 10.1出现暂停读取PLC数据问题及其解决
问题描述 雨水泵站经过3年运行,突发dasmbtcp驱动与施耐德M580系列PLC时断时连问题 原因分析 在经过现场软件重装修复,授权重装,网络通讯状态监视(一直ping PLC IP地址方式)重装d ...
- 从零开始了解kubernetes
kubernetes 已经成为容器编排领域的王者,它是基于容器的集群编排引擎,具备扩展集群.滚动升级回滚.弹性伸缩.自动治愈.服务发现等多种特性能力. 本文将带着大家快速了解 kubernetes , ...
- jboss未授权访问
测试 poc地址 https://github.com/joaomatosf/jexboss
- 微信小程序 -- 英语词典 (小程序插件)
英语词典小程序 基于英语词典小程序插件 - 提供开源地址 项目地址 英语词典小程序插件: 微信小程序 词典 真题基础服务插件(gitee.com) 功能特色 [x] 全面详实的经典词库,详细释义覆盖约 ...
- Java互联网架构师系统进阶课程学习 (4)【享学】
Java互联网架构师系统进阶课程学习 (4)[享学] 4.显式锁和AQS 显式锁 Lock接口和核心方法 Lock接口和synchronized的比较 synchronized 代码简洁,Lock ...
- Bugku-web-秋名山老司机
计算式子的值然后使用post方法传值.直接脚本跑. import requestsimport reurl = "http://123.206.87.240:8002/qiumingshan ...
- Salesforce Integration 概览(六) UI Update Based on Data Changes(UI自动更新基于数据变更)
Salesforce用户界面必须由于Salesforce数据的更改而自动更新.这个场景其实在我所经历的项目中用到的不是特别多,因为客户可能直接点击刷新按钮就直接看到了最新的数据,而不是那种一直不刷新然 ...
- 【javaFX学习】(三) 控件手册
移至http://blog.csdn.net/qq_37837828/article/details/78732605 更新 这里写的控件可能不是所有的控件,但是应该是比较齐全并足够用的了,后面还有图 ...
- ACM学习笔记:二叉堆
title : 堆 date : 2021-8-3 tags : ACM,数据结构 什么是堆 堆是一棵具有特定性质的二叉树,堆的基本要求是堆中所有结点的值必须大于等于(或小于等于)其孩子结点的值,这也 ...
- mysqldump备份恢复数据
//导出数据(多个表以空格间隔)mysqldump -h 127.0.0.1 -uroot -p123456 --default-character-set=utf8 pandora report & ...