nginx常用配置解析
1、常用公共参数(一般放在http下面,虽然很多参数都支持server和location)
keepalive_timeout 60; #单位为s
keepalive_request 2; #设置与客户端在上述超时次数才真正断开连接;
tcp_nodelay off; #用于设置是否允许套接字TCP_NODELAY,默认为on; tcp_nodelay 作用是用于设置数据包尽快发送数据; 和tcp_nodelay相反,如果启用了 buffer,建议关闭 tcp_nodelay
tcp_nopush on; #用于设置是否允许套接字TCP_NOPUSH,默认为off; tcp_nopush 的作用就是 数据包会累计到一定大小之后才会发送;
send_timeout 10; #用于设置与客户端建立tcp握手的超时时间
send_file on; #用于设置是否启用sendfile()函数,常用是设置为on;
client_max_body_size 100m; #用于设置允许接受的客户端请求内容的最大值,超过这个值将返回http 413
client_body_buffer_size 128k; #用于指定客户端请求内容(用户内容)的缓冲大小,如果客户端请求内容大于设置值,将启用临时文件
client_body_temp_path /usr/local/nginx/client_body_temp/ ; #设置client_body_buffer_size临时文件目录
client_head_buffer_size 20k ; #用于缓冲客户端的请求头(头体Request Header),如果带cookie的话,需要特别注意加大点,默认值为1kn
server_names_hash_max_size 512; #用于限制server_name 的hash大小,粗暴理解就是server_name的字节长度r
server_tokens off; #主要用于设置响应头中nginx版本的显示,off代表关闭,on开启,默认配置on,基于安全考虑,一般选择off;
gzip on;
gzip_buffers 4 8k; #用于设置几个单位的缓存用于存储gzip的压缩结果流,如果未设置,将获取与需要压缩的文件大小一样的内存;
gzip_comp_level 1; #用于设置压缩比,可设置参数为1-9,1最快,但压缩比例小,9最慢,但压缩比例大;
gzip_min_length 1k; #设置超过多大的内容需要进行压缩,默认是0,一般设置为1K;
下列这些模块设置的需根据生产场景来设置位置
add_header name value; #用于在响应头中添加指定的头和值;可以设置多个,需要分行设置;
add_header name1 value1;
add_header Cache-Control no-store,no-cache; #用于通知浏览器不缓存
expires time|epoch|max|off; #用于设置http响应头中Expires和Cache-Control头的值
#time: 即设置时间长短,如果设置为-1,则表示为永远过期;
proxy相关配置:
proxy_hide_header header_name; #用来隐藏后端被代理的服务器响应头,nginx返回给客户端的响应头里将不会出现被隐藏的头;
proxy_pass_header header_name; #用于指定某些默认被nginx禁止转发的响应头可以进行转发;
proxy_pass ; #用来指定后端代理地址
proxy_set_header name value ; #用于重新定义或添加从客户端过来的请求头 ,然后再发给后端被代理服务器
proxy_redirect off; #用于更改后端被代理服务器的响应头中的location,默认值为off;
proxy_connect_timeout #用于指定跟后端服务器连接的超时时间,发起握手至等候响应的时间 单位s 默认60
proxy_read_timeout #用于指定跟后端服务器建立了TCP连接,至TCP连接状态为ESTABLIASHED时间 单位s 默认60
proxy_send_timeout #用于指定后端服务器数据回传时间_就是在规定时间之内后端服务器必须传完所有的数据 单位s 默认60
proxy_buffer_size 4k; #用于指定一个处理后端响应的header的缓存的大小,可用来nginx做规则匹配处理
proxy_buffers 4 32k; #指定一个处理后端代理服务器返回主体 应答(response的网页结果)的buffer 的数量和大小
proxy_cookie_path /proxy_path /; #将客户端的请求头中的cookie代理至后端
总结:对于响应头的修改 locatio<server<http ,即当在location中设置了某些响应头,如果server中有修改,则以server为最终结果,如果http中再次设置,则以http中为准;
nginx常用配置解析的更多相关文章
- 【第六课】Nginx常用配置下详解
目录 Nginx常用配置下详解 1.Nginx虚拟主机 2.部署wordpress开源博客 3.部署discuz开源论坛 4.域名重定向 5.Nginx用户认证 6.Nginx访问日志配置 7.Ngi ...
- Apache入门 篇(二)之apache 2.2.x常用配置解析
一.httpd 2.2.x目录结构 Cnetos 6.10 YUM安装httpd 2.2.x # yum install -y httpd 程序环境 主配置文件: /etc/httpd/conf/ht ...
- 轻量级HTTP服务器Nginx(常用配置实例)
轻量级HTTP服务器Nginx(常用配置实例) 文章来源于南非蚂蚁 Nginx作为一个HTTP服务器,在功能实现方面和性能方面都表现得非常卓越,完全可以与Apache相媲美,几乎可以实现Apa ...
- NGINX(四)配置解析
前言 nginx配置解析是在初始化ngx_cycle_t数据结构时,首先解析core模块,然后core模块依次解析自己的子模块. 配置解析过程 nginx调用ngx_conf_parse函数进行配置文 ...
- nginx常用配置系列-HTTPS配置
接上篇,nginx配置系列 HTTPS现在已经很流行,特别是AppStore上线的应用要求使用HTTPS进行通信,出于安全考虑也应该使用HTTPS,HTTPS配置需要准备证书文件,现在也有很多免费证书 ...
- Nginx常用配置实例(4)
Nginx作为一个HTTP服务器,在功能实现方面和性能方面都表现得非常卓越,完全可以与Apache相媲美,几乎可以实现Apache的所有功能,下面就介绍一些Nginx常用的配置实例,具体包含虚拟主机配 ...
- nginx常用配置系列-虚拟主机
本来准备详尽的出一份nginx配置讲解,但nginx功能配置繁多,平常使用中使用最多的一般有: 1. 虚拟主机配置 2. HTTPS配置 3. 静态资源处理 4. 反向代理 ============= ...
- nginx常用配置
nginx.conf配置文件详解 其主要分为几个模块 全局快 从开始到events块之间的一部分内容,其作用域为全局作用域 events块 主要负责Nginx服务器与用户的网络连接 常用设置: 是否开 ...
- nginx常用配置2
## 一.Nginx中虚拟主机配置 ### 1.基于域名的虚拟主机配置 1.修改宿主机的hosts文件(系统盘/windows/system32/driver/etc/HOSTS) linux : ...
随机推荐
- Python中property属性的概论和使用方法
property属性 概念: 定义一个方法但是使用装饰器property,只可以有一个self形参 可以用这样的属性动态的获取属性的值 定义方式(经典类) class Fun(): @property ...
- 2016 年 31 款轻量高效的开源 JavaScript 插件和库
目前有很多网站设计师和开发者喜欢使用由JavaScript开发的插件和库,但同时面临一个苦恼的问题:它们中的大多数实在是太累赘而且常常降低网站的性能.其实,其中也有不少轻量级的插件和库,它们不仅轻巧有 ...
- C# Connection:连接数据库---转载
C# 语言中 Connection 类是 ADO.NET 组件连接数据库时第一个要使用的类,也是通过编程访问数据库的第一步. 接下来我们来了解一下 Connection 类中的常用属性和方法,以及如何 ...
- topthink/think-swoole 扩展包的使用 之 Task
本想自己适配的,奈何keng貌似不少,所以果断选择官方提供的包来适配233... 默认条件:thinkphp5.1.*版本下,且安装了swoole扩展 主要演示:task 任务的投递 友情提示:在sw ...
- 如何确定Redis集群中各个节点的主从关系
1.首先通过命令(以192.168.203.141为例,-c代表集群的意思) ./redis-cli -h 192.168.203.141 -p 8001 -c 2.然后在输入 cluster no ...
- ch8 高度相等的列--CSS方法
如下图所示效果,可以使用表格实现,本文采用在CSS中实现. 标记如下: <div class="wrapper"> <div class="box&qu ...
- Maven项目- get请求的乱码问题,使用tamcat7出现乱码的解决方法
get请求的乱码问题: 解决方法: 手动处理编码
- ios 获取当前系统时间
1. NSDate + NSDateFormatter NSDate *date = [NSDate date]; NSDateFormatter *format = [[NSDateFormatte ...
- 1-4SpringBoot操作之Spring-Data-Jpa(一)
Spring-Data-Jpa JPA(Java Persistence API)定义了一系列对象持久化的标准, 目前实现这一规范的产品有Hibernate.TopLink等. Spring Data ...
- Tomcat源码导入celipse
1.eclipse 源码下载地址 http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/ 2.由于tomcat是ant管理构建的,故要先安装ant 构 ...