nginx高级用法汇总
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高级用法汇总的更多相关文章
- nginx高级用法
功能 说明 配置语法 配置位置 配置举例 结果验证 备注 rewrite 跳转重定向(不同于代理的跳转重定向,此处nginx不是代理服务器,而是本身就是web服务器) rewrite 正则表达式 re ...
- Python进阶:切片的误区与高级用法
2018-12-31 更新声明:切片系列文章本是分三篇写成,现已合并成一篇.合并后,修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔接做了大量改动.原系列的单篇就不删除了,毕竟也是 ...
- nginx 场景业务汇总 (中)
本文链接:http://www.cnblogs.com/zhenghongxin/p/8906225.html,如果可以,请阅读上篇 <nginx场景业务汇总(初)> (十三)负载均衡 轮 ...
- Python切片中的误区与高级用法
众所周知,我们可以通过索引值(或称下标)来查找序列类型(如字符串.列表.元组...)中的单个元素,那么,如果要获取一个索引区间的元素该怎么办呢? 切片(slice)就是一种截取索引片段的技术,借助切片 ...
- redis的Linux系统安装与配置、redis的api使用、高级用法之慢查询、pipline事物
今日内容概要 redis 的linux安装和配置 redis 的api使用 高级用法之慢查询 pipline事务 内容详细 1.redis 的linux安装和配置 # redis 版本选择问题 -最新 ...
- Visual Studio 宏的高级用法
因为自 Visual Studio 2012 开始,微软已经取消了对宏的支持,所以本篇文章所述内容只适用于 Visual Studio 2010 或更早期版本的 VS. 在上一篇中,我已经介绍了如何编 ...
- SolrNet高级用法(分页、Facet查询、任意分组)
前言 如果你在系统中用到了Solr的话,那么肯定会碰到从Solr中反推数据的需求,基于数据库数据生产索引后,那么Solr索引的数据相对准确,在电商需求中经常会碰到菜单.导航分类(比如电脑.PC的话会有 ...
- sqlalchemy(二)高级用法
sqlalchemy(二)高级用法 本文将介绍sqlalchemy的高级用法. 外键以及relationship 首先创建数据库,在这里一个user对应多个address,因此需要在address上增 ...
- Solr学习总结(六)SolrNet的高级用法(复杂查询,分页,高亮,Facet查询)
上一篇,讲到了SolrNet的基本用法及CURD,这个算是SolrNet 的入门知识介绍吧,昨天写完之后,有朋友评论说,这些感觉都被写烂了.没错,这些基本的用法,在网上百度,资料肯定一大堆,有一些写的 ...
随机推荐
- win10如何查看文件扩展名
就可以修改扩展名,修改文件类型.
- 浏览器端时间循环与nodejs端时间循环的不同之处(宏任务与微任务)
浏览器端与node端都有宏任务与微任务的概念.字面意思上看宏任务就是耗时间比较长的任务,而微任务是耗时短的任务. 在浏览器端,宏任务包括setTimeout,setInterval,微任务则包括Pro ...
- struts2.5入门
引用链接:https://www.cnblogs.com/qulianqing/p/6627746.html
- Tomcat源码分析 -- Tomcat整体架构
引用链接:https://blog.csdn.net/w1992wishes/article/details/79242797
- bashrc和bash_profile
在~/.bashrc中起别名 !/bin/bash下必须加上shopt -s expand_aliases #!/bin/sh下不用 shopt -s expand_aliases 这一条命令让she ...
- Container and Injection in Java
一.Container 1.为什么使用Container 通常,瘦客户端多层应用程序很难编写,因为它们涉及处理事务和状态管理.多线程.资源池和其他复杂的低级细节的复杂代码行.基于组件和独立于平台的Ja ...
- vue---checkbox,获取选中的值
html: <input class="weui-check" type="checkbox" name="checkbox1" va ...
- python入门(十三):面向对象(继承、重写、公有、私有)
1. 三种类定义的写法 class P1:#定义类 加不加()都可以 pass class P2(): #带(),且括号中为空,类定义 pass ...
- select 自匹配问题
原生js给select赋值或者vue绑定数据,会自匹配下拉选项的value或者key,从而显示对应的label或者对应的option的html eg: 原生: <select name=&quo ...
- string转可空类型
string类型转可空类型 string.IsNullOrEmpty(str) ? (int?)null : int.Parse(str) 此处要注意将null转为可空的类型才可以,不然会报错