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的特性与核心类别及配置文件和模块详解的更多相关文章

  1. Nginx核心配置文件常用参数详解

    Nginx核心配置文件常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于Nginx权威文档的话童鞋们可以参考Nginx官方文档介绍:http://nginx.org/ ...

  2. Nginx基础篇(2)- Nginx基本配置文件和变量详解

    Nginx基本配置文件和变量详解 1. 基本配置文件 /etc/nginx/nginx.conf # nginx运行的用户 user nginx; # nginx进程数,建议设置为等于CPU总核心数. ...

  3. Tomcat配置(二):tomcat配置文件server.xml详解和部署简介

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  4. Tomcat(二):tomcat配置文件server.xml详解和部署简介

    Tomcat系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1. 入门示例:虚拟主机提供web服务 该示例通过设置虚拟主机来提供web服务 ...

  5. Mybatis系列全解(四):全网最全!Mybatis配置文件XML全貌详解

    封面:洛小汐 作者:潘潘 做大事和做小事的难度是一样的.两者都会消耗你的时间和精力,所以如果决心做事,就要做大事,要确保你的梦想值得追求,未来的收获可以配得上你的努力. 前言 上一篇文章 <My ...

  6. MySQL Cluster 配置文件(config.ini)详解

    MySQL Cluster 配置文件(config.ini)详解 ################################################################### ...

  7. SpringBoot配置文件 application.properties详解

    SpringBoot配置文件 application.properties详解   本文转载:https://www.cnblogs.com/louby/p/8565027.html 阅读过程中若发现 ...

  8. nginx的gzip模块详解以及配置

    文章来源 运维公会:nginx的gzip模块详解以及配置   1.gzip模块作用 gzip这个模块无论在测试环境还是生产环境都是必须要开启,这个模块能高效的将页面的内容,无论是html或者css.j ...

  9. mysql配置文件my.cnf详解

    原文地址:mysql配置文件my.cnf详解 作者:gron basedir = path 使用给定目录作为根目录(安装目录). character-sets-dir = path 给出存放着字符集的 ...

随机推荐

  1. B. Views Matter

    链接 [http://codeforces.com/contest/1061/problem/B] 题意 问你最多去掉多少块使得从上和右看,投影图不变 分析 注意细节,尤其第一列 代码 #includ ...

  2. JSTLView快速国际化(SpringMVC)

    JSTLView:快速国际化:只要导入了jstl的jar包,以前默认创建的InternalResouceView都会被使用jstlView替代:    国际化的新步骤:           1).写好 ...

  3. wordpress升级出错

    服务器是腾讯云 搜索到的解决方案有几个,试了好几个,不知道哪个是根本原因,反正都操作了. 设置wordpress文件夹和子文件夹的权限 编辑wp-config.php,在文末添加如下: define( ...

  4. [2017BUAA软工]个人项目

    软工个人项目 一.Github项目地址 https://github.com/Lydia-yang/2017BUAA-SoftwareEngineering 二.解题思路 在刚开始拿到题目的时候,关于 ...

  5. 运用PDO存储将图片、音频文件存入数据库

    在数据库中创建表格的时候,有一个字段为image,用来保存图片,那么其类型就是blob,关于blob,百度百科是这样描述的 BLOB (binary large object),二进制大对象,是一个可 ...

  6. Java控制台常用命令

    http://docs.oracle.com/javase/7/docs/technotes/tools/windows/java.html javaw是java的带console版本,其他一致. h ...

  7. Typecho博客迁移

    在新的机器上先搭建好一个新的Typecho博客,数据库名称和原博客相同(可以省不少事). 备份原来博客的usr目录. 备份mysql数据库,命令: mysqldump -uroot -p --all- ...

  8. [工作相关] 一个虚拟机上面的SAP4HANA的简单使用维护

    1.公司组织竞品分析, 选择了SAP的 SAP4HANA作为竞品 这边协助同事搭建了SAP4HANA的测试环境: 备注 这个环境 应该是同事通过一些渠道获取到的. 里面是基于这个虚拟机进行的说明:: ...

  9. Java中对域和静态方法的访问不具有多态性

    1.将方法调用同方法主体关联起来被称为 2.编译期绑定(静态)是在程序编译阶段就确定了引用对象的类型 3.运行期绑定(动态绑定)是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法 ...

  10. 删除Mac上的mysql数据库

    sudo rm /usr/local/mysqlsudo rm -rf /usr/local/mysql*sudo rm -rf /Library/StartupItems/MySQLCOMsudo ...