1,nginx限制IP访问,允许IP访问

1.1 模块:nginx_http_access_module

注意:检测顺序是按配置顺序进行的,匹配首条规则将会被使用,所以要注意在配置文件配置的顺序。

 

 a,指令:allow

 语法:allow [address|CIDR|all]

 默认:none

 使用环境:http,server,location,limit_except

 功能:指定网络地址或IP允许访问

 b,指令:deny

 语法:deny[address|CIDR|all]

 默认:none

 使用环境:http,server,location,limit_except

 功能:指定网络地址或IP禁止访问

1.3 示例:

  location / {
      root /usr/share/nginx/html;
      allow 192.168.20.150;
      deny all;
  }

2,提供FTP下载功能

2.1 模块:ngx_http_autoindex_module

注意:它的功能是在一个没有index.html的目录中提供文件的自动列表,换言之,只有ngx_http_index_module找不到index文件时,客户端的请求才会到ngx_http_autoindex_module

2.2 指令

 a,指令:autoindex

 语法:autoindex[on|off]

 默认:autoindex off

 使用环境:http,server,location

 功能:启用或禁用自动目录列表

 b,指令:autoindex_exact_size

 语法:autoindex_exact_size[on|off]

 默认:autoindex_exact_size on

 使用环境:http,server,location

 功能:用于在目录列表中设定文件大小的格式,如果是以精确的大小显示,就使用KB,   如果是以取整表示,就使用KB,MB,GB,默认为精确显示大小。

 c,指令:autoindex_localtime

 语法:autoindex_localtime[on|off]

 默认:autoindex_localtime off

 使用环境:http,server,location

 功能:j是否在目录列表中以本地是间显示文件的时间,默认为off,即使用GMT时间,使用该指令要注意,在时间显示上有很大不同

2.3 示例:

  location / {
  root /ftp;
  autoindex on;
  autoindex_exact_size off;
  autoindex_localtime on;
  limit_rate 1k;  #指定每秒该连接能下载的bytes,主要用来限制个别请求的带宽
  }

效果如下:

3,提供访问身份验证功能

3.1 模块:ngx_http_auth_basic_module

注意:它的功能是使用“HTTP基本认证”协议验证用户名和密码来限制对资源的访问。

3.2 指令

 a,语法:auth_basic string | off;

 默认:auth_basic off;

 使用环境:http, server, location, limit_except

 功能:开启使用“HTTP基本认证”协议的用户名密码验证。 指定的参数被用作 域。 参数off可以取消继承自上一个配置等级 auth_basic 指令的影响。

 b,指令:auth_basic_user_file file

 语法:auth_basic_user_file file

 默认:-

 使用环境:http, server, location, limit_except

 功能:指定保存用户名和密码的文件

3.3,示例:

1,yum -y install httpd-tools # 安装 htpasswd 工具

2,htpasswd -bc /usr/nginx/conf/user.passwd username password

3,vim nginx.conf

  server {
  listen 80;
  server_name localhost;
  auth_basic "nginx Auth";
  auth_basic_user_file /usr/nginx/conf/user.passwd;

  ....
  }

nginx高级用法汇总的更多相关文章

  1. nginx高级用法

    功能 说明 配置语法 配置位置 配置举例 结果验证 备注 rewrite 跳转重定向(不同于代理的跳转重定向,此处nginx不是代理服务器,而是本身就是web服务器) rewrite 正则表达式 re ...

  2. Python进阶:切片的误区与高级用法

    2018-12-31 更新声明:切片系列文章本是分三篇写成,现已合并成一篇.合并后,修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔接做了大量改动.原系列的单篇就不删除了,毕竟也是 ...

  3. nginx 场景业务汇总 (中)

    本文链接:http://www.cnblogs.com/zhenghongxin/p/8906225.html,如果可以,请阅读上篇 <nginx场景业务汇总(初)> (十三)负载均衡 轮 ...

  4. Python切片中的误区与高级用法

    众所周知,我们可以通过索引值(或称下标)来查找序列类型(如字符串.列表.元组...)中的单个元素,那么,如果要获取一个索引区间的元素该怎么办呢? 切片(slice)就是一种截取索引片段的技术,借助切片 ...

  5. redis的Linux系统安装与配置、redis的api使用、高级用法之慢查询、pipline事物

    今日内容概要 redis 的linux安装和配置 redis 的api使用 高级用法之慢查询 pipline事务 内容详细 1.redis 的linux安装和配置 # redis 版本选择问题 -最新 ...

  6. Visual Studio 宏的高级用法

    因为自 Visual Studio 2012 开始,微软已经取消了对宏的支持,所以本篇文章所述内容只适用于 Visual Studio 2010 或更早期版本的 VS. 在上一篇中,我已经介绍了如何编 ...

  7. SolrNet高级用法(分页、Facet查询、任意分组)

    前言 如果你在系统中用到了Solr的话,那么肯定会碰到从Solr中反推数据的需求,基于数据库数据生产索引后,那么Solr索引的数据相对准确,在电商需求中经常会碰到菜单.导航分类(比如电脑.PC的话会有 ...

  8. sqlalchemy(二)高级用法

    sqlalchemy(二)高级用法 本文将介绍sqlalchemy的高级用法. 外键以及relationship 首先创建数据库,在这里一个user对应多个address,因此需要在address上增 ...

  9. Solr学习总结(六)SolrNet的高级用法(复杂查询,分页,高亮,Facet查询)

    上一篇,讲到了SolrNet的基本用法及CURD,这个算是SolrNet 的入门知识介绍吧,昨天写完之后,有朋友评论说,这些感觉都被写烂了.没错,这些基本的用法,在网上百度,资料肯定一大堆,有一些写的 ...

随机推荐

  1. CAtia_打开提示:许可证过期怎么办

    CAtia_许可证过期怎么办:进计算机管理,点开服务和应用程序,点服务,找到DS License Server,在启动此服务的地方点启动,从而开启DS License Server.

  2. centos7 根分区扩容

    系统安装时候使用的默认分区,根分区只分了50G,使用的是LVM 想把home分区分出来660G给根分区 先查了点资料开搞 由于xfs分区只支持增大,不支持缩小,所以home目前是xfs格式无法进行缩小 ...

  3. 让anujs支持rc-select

    git clone git@github.com:react-component/select.git cd select npm i babel-plugin-antd --save-dev npm ...

  4. FreeMarker案例

  5. c#实现文件写入数据表/以二进制流保存到数据库,并实现下载

    上传: 1.上传文件先保存到服务器   File.SaveAs(path) 2.sql(文件和sql在一个服务器上)进行保存操作: insert into File(filename,filebody ...

  6. inline-block的理解

    首先我们大概区分下 inline与inline-block.block的区别, 官方定义如下: inline:内联元素,从左到右依次排列,宽度高度由内容决定: block:块级元素,独占一行,可以设定 ...

  7. 使用拦截器对前端传入的字符串进行trim操作

    @Before("apiItf()") public void before(JoinPoint joinPoint) throws Exception { Object[] ar ...

  8. 大数据入门到精通16--hive 的条件语句和聚合函数

    一.条件表达 case when ... then when .... then ... when ... then ...end select film_id,rpad(title,20," ...

  9. 128bit 整数运算的实现

    对于128bit的长整型运算,GCC提供了扩展类型:__int128.然而该类型不在C/C++语言的标准之中,并且对于不同种类的编译器,它的实现情况不同.因此,在编写相关的可移植程序时,我们有必要实现 ...

  10. 完成一个Laravel项目的过程

    1.分析项目,找出项目的元素并进行建模(navicat 该工具还可以到处sql语句) 建立关系 2.安装Laravel(使用composer来安装,如果没有的话先安装composer) 3.配置虚拟主 ...