Nginx的特性与核心类别及配置文件和模块详解
1.root path
设置web资源路径,用于指定请求的根文档目录,从根开始匹配
root:root/URI
2.alias path
指定路径别名,只能用于location中,从最后一个/开始匹配
alias: alias/
3. index file ....
定义默认页面,可以跟多个值,自左向右匹配
4.error_page code ...[=[response]] URI
当对于某个请求发回错误时,如果匹配上了error_page指令中设定的code,则从定向至新的URI中
错误重定向
5.try_files path1 [path2 ... ] URI
自左向右尝试读取所有path所指定路径,在第一个找到即停止并返回,如果path均不存在,则返回最后一个URI
location ~* ^/document/(.*)${
root /www/htdocs
try_files $uri /docu/$1 /temp.html
}
http://www.linuxidc.com/documents/a.html
http://www.linuxidc.com/docu/a.html
http://www.linuxidc.com/temp.html
六、网络连接相关的设置
1.keepalive_timeout time
保持连接的超时时长,默认为75s
2.keepalive_requests n
在一次长连接上允许承载的最大请求数
3.keepalive_disable [msie6|asfari|none]
对指定的浏览器禁止使用长连接
4.tcp_nodelay on|off
对keepalive连接是否使用tcp_nodelay选项
5.client_header_timeout time
读取http请求首部的超时时长
6.client_body_timeout time
请求http请求包体的超时时长
7.save_timeout time
发送响应的超时时长
七、对客户端请求的限制
1.limit_except method ... { ... }
指定范围之外的其他的访问控制,只能用于location中
2.client_max_body_size SIZE
http请求包体的最大值,常用于限定客户端所能够请求的最大包体,根据请求首部中的Content-Length来检查,以避免无用的传输
3.limit_rate speed
限制客户端每秒传输的字节数,默认为0,表示没有限制
4.limit_rate_after time
nginx向客户端发送响应报文时,如果时长超过了此处指定的时长,则后续的发送过程开始限速
八、文件操作的优化
1.aendfile on|off
是否启用sendfile功能
2.aio on|off
是否启用aio功能
3.open_file_cache max=N [incative=time]|off
是否打开文件缓存功能
max:用于缓存条目的最大值,允许打开的缓存条目最大数,当满两类以后将根据LRU(最小最少连接数)算法进行置换
inactive:某缓存条目在指定时长内没有被访问过时,将自动被删除,通常默认为60s
缓存的信息包括
文件句柄、文件大小和上次修改的时间
已经打开的目录结构
没有找到或没有访问权限的信息
4.open_file_cache_errors on|off
是否缓存文件找不到或者没有权限访问等信息
5.open_file_cache_min_use #
在inactive指定的时长内被访问超过此处指定的次数时,不会被删除
6.open_file_cache_valid time
多长时间检查一次缓存中的额条目是否超出非活动时长,默认为60s
九、对客户端请求的特殊处理
1.ignore_invalid_headers on|off
是否忽略不合法的http首部,默认为on,off意味着请求首部中出现不合规的首部将拒绝响应,只能用于server和http中,建议改为off
2.log_not_found on|off
用户访问的文件不存在时,是否将其记录到错误日志中
3.resolver address
指定nginx使用的dns服务器地址
4.resolver timeout
指定DNS解析超时时长,默认为30s
5.server_tokens on|off
是否在错误页面中显示nginx的版本号
十、http核心模块的内置变量
1.$uri:当前请求的uri,不带参数
2.$request_uri:请求的uri,带完整参数
3.$host:http请求报文中host首部,如果请求中没有host首部,则以处理此请求的主机的著名代替
4.$hostname:nginx服务运行所在主机的主机名
5.$remote_addr:客户端ip
6.$remote_port:客户端port
7.$remote_user:使用用户认证时客户端用户输入的用户名
8.$request_filename:用户请求中的URI经过本地root或alias转换后映射的本地的文件路径
9.$request_method:请求方法
10.$server_addr:服务器地址
11.$server_name: 服务器名称
12.$server_port: 服务器端口
13.$server_protocol:服务器想客户端发送响应时的协议,如http/1.1 http/1.0
14.$scheme: 在请求中使用的scheme映射协议本身的协议
15.$http_HEADER:匹配请求报文中指定的HEADER 例如:$http_host匹配请求报文中的host首部
16.$sent_http_HEADER:响应报文中指定的HERADER,例如:$http_content_type匹配相应报文中的content-type首部
17.$document_root:当前请求映射到的root配置
Nginx的特性与核心类别及配置文件和模块详解的更多相关文章
- Nginx核心配置文件常用参数详解
Nginx核心配置文件常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于Nginx权威文档的话童鞋们可以参考Nginx官方文档介绍:http://nginx.org/ ...
- Nginx基础篇(2)- Nginx基本配置文件和变量详解
Nginx基本配置文件和变量详解 1. 基本配置文件 /etc/nginx/nginx.conf # nginx运行的用户 user nginx; # nginx进程数,建议设置为等于CPU总核心数. ...
- Tomcat配置(二):tomcat配置文件server.xml详解和部署简介
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- Tomcat(二):tomcat配置文件server.xml详解和部署简介
Tomcat系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1. 入门示例:虚拟主机提供web服务 该示例通过设置虚拟主机来提供web服务 ...
- Mybatis系列全解(四):全网最全!Mybatis配置文件XML全貌详解
封面:洛小汐 作者:潘潘 做大事和做小事的难度是一样的.两者都会消耗你的时间和精力,所以如果决心做事,就要做大事,要确保你的梦想值得追求,未来的收获可以配得上你的努力. 前言 上一篇文章 <My ...
- MySQL Cluster 配置文件(config.ini)详解
MySQL Cluster 配置文件(config.ini)详解 ################################################################### ...
- SpringBoot配置文件 application.properties详解
SpringBoot配置文件 application.properties详解 本文转载:https://www.cnblogs.com/louby/p/8565027.html 阅读过程中若发现 ...
- nginx的gzip模块详解以及配置
文章来源 运维公会:nginx的gzip模块详解以及配置 1.gzip模块作用 gzip这个模块无论在测试环境还是生产环境都是必须要开启,这个模块能高效的将页面的内容,无论是html或者css.j ...
- mysql配置文件my.cnf详解
原文地址:mysql配置文件my.cnf详解 作者:gron basedir = path 使用给定目录作为根目录(安装目录). character-sets-dir = path 给出存放着字符集的 ...
随机推荐
- C. Multiplicity
链接 [http://codeforces.com/contest/1061/problem/C] 题意 给你一个数组,让你找有多少个子串(并非连续,但相对位置不能换),满足bi%i==0; 分析 d ...
- 1013 B. And
链接 [http://codeforces.com/contest/1013/problem/B] 题意 给你一个n和x,再给n个数,有一种操作用x&a[i]取代,a[i],问使其中至少两个数 ...
- mooc linux学习总结
通过八周的学习获得了很多知识. 首先,通过网课老师形象生动的讲述和描述一些专业词汇,使我更加深刻的记住并掌握了这些内容:动态的展示堆栈的变化,更容易理解一段汇编代码:分析操作系统的工作,记 ...
- RedisDump安装报错
环境:win10 首先安装 Ruby 安装好后,使用命令行 gem install redis-dump 在安装过程中始终报错,意思是无法使用make命令 然后安装make 参考教程: http:// ...
- Opentsdb 启动显示配置文件不存在
今天 重新启动opentsdb 出现本地配置文件不存在 这不知道 我查了一下官网 了解到 You can use the --config command line argument to s ...
- 『编程题全队』Beta 阶段冲刺博客五
1.提供当天站立式会议照片一张 2.每个人的工作 (有work item 的ID) (1) 昨天已完成的工作 孙志威: 1.为新建提醒框添加了正则匹配限制 2.添加了新建Reminder的功能 3.初 ...
- HTML 选择器
c56 div:nth-of-type(1) { margin-left: 12px; margin-top: 25px; } .c56 div:nth-of-type(2) { margin-top ...
- Maven的课堂笔记1
1 什么是maven? Maven是一个跨平台的项目管理工具,主要用于基于java平台的项目构建,依赖管理. Clean compile test package install run ...
- Laravel Eloquent ORM 时如何查询表中指定的字段
导读:在使用Laravel ORM的Model方法find, get, first方法获取数据对象时返回的数据对象的attributes属性数组里会包含数据表中所有的字段对应...原文地址:http: ...
- Performance testing test scenarios
1 check if page load time is within acceptable range2 check page load on slow connections 3 check re ...