1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 读取nginx的conf文件_nginx.conf配置文件

读取nginx的conf文件_nginx.conf配置文件

时间:2021-06-20 19:45:00

相关推荐

读取nginx的conf文件_nginx.conf配置文件

1、nginx.conf文件:

user username #指定允许ninx的用户名

worker_processes 11; #一般为物理核心数-1,

worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000; #绑定nginx允许的CPU核心

error_log /var/log/nginx/error1.log; #nginx错误日志的保存路径

pid /path/to/pidfile_name; 指定pid文件的路径,编译的时候可以指定,边以后也可以在配置文件重新指定,是必备的指令

worker_rlimit_nofile #指定一个worker进程所能够打开的最大文件句柄数;

worker_rlimit_sigpending #;设定每个用户能够发往worker进程的信号的数量;

events{

worker_connections2048; #每个woker进程能打开的最大连接数

multi_accepton; #是否允许一次性地响应多个用户请求

useepoll; #定义使用的事件模型,建议让nginx自动选择;

}

用于调试、定位问题:只调试nginx时候使用

1、daemon[on|off]

默认为on,调试时要设置为off,使得所有信息直接输出到调试台。

2、master_processon|off

默认就是on,调试时可以将master关闭只启动一个worker,方便定位问题。即以woker模式运行nginx

3、error_log/path/to/error_log level;

错误日志文件及其级别;默认为error级别;调试时可以使用debug级别,但要求在编译时必须使用--with-debug启用debug功能;

server_tokensoff; #隐藏错误页面的nginx版本信息

keepalive_timeout time; 保持连接的超时时长;默认为75秒;

keepalive_requests n; 在一次长连接上允许承载的最大请求数;

keepalive_disable [msie6 | safari | none ]对指定的浏览器禁止使用长连接;

tcp_nodelay on|off #发送响应的超时时长

client_header_timeout time;#即读取http请求首部的超时时长,默认60秒,对链路不好的情况可以调小一点

client_body_timeout time; #读取http请求包体的超时时长默认60秒,对链路不好的情况可以调小一点

send_timeout time; # 发送给用户但是用户接收的超时时长,发送响应的超时时长

对客户端请求的限制:

limit_exceptmethod ...

允许使用除了写在这里的以外的方法,即写在里面的不能用

指定对范围之外的其它方法的访问控制;

limit_exceptGET {

allow172.16.0.0/16;

denyall;

}

2、client_max_body_sizeSIZE;

http请求包体的最大值;常用于限定客户所能够请求的最大包体;根据请求首部中的Content-Length来检测,以避免无用的传输;

3、limit_ratespeed;

限制客户端每秒钟传输字节的字节数;默认为0,表示没有限制;

4、limit_rate_aftertime;

nginx向客户发送响应报文时,如果时长超出了此处指定的时长,则后续的发送过程开始限速;

文件操作的优化:

1、sendfileon|off

是否启用sendfile功能;

2、aio on|off

是否启用aio功能;

3、open_file_cachemax=N [inactive=time]|off

是否打开文件缓存功能;

max: 缓存条目的最大值;当满了以后将根据LRU算法进行置换;

inactive:某缓存条目在指定时长时没有被访问过时,将自动被删除;默认为60s;

缓存的信息包括:

文件句柄、文件大小和上次修改时间;

已经打开的目录结构;

没有找到或没有访问权限的信息;

4、open_file_cache_errorson|off

是否缓存文件找不到或没有权限访问等相关信息;

5、open_file_cache_validtime;

多长时间检查一次缓存中的条目是否超出非活动时长,默认为60s;

6、open_file_cache_min_use#;

在inactive指定的时长内被访问超此处指定的次数地,才不会被删除;

对客户端请求的特殊处理:

1、ignore_invalid_headerson|off

是否忽略不合法的http首部;默认为on; off意味着请求首部中出现不合规的首部将拒绝响应;只能用于server和http;

2、log_not_foundon|off

是否将文件找不到的信息也记录进错误日志中;

3、resolveraddress;

指定nginx使用的dns服务器地址;

4、resover_timeouttime;

指定DNS解析超时时长,默认为30s;

5、server_tokenson|off;

是否在错误页面中显示nginx的版本号;

内存及磁盘资源分配:

1、client_body_in_file_onlyon|clean|off

HTTP的包体是否存储在磁盘文件中;off表示不存储,非off表示都存储,即使包体大小为0也会创建一个磁盘文件;on表示请求结束后包体文件不会被删除,clean表示会被删除;

2、client_body_in_single_bufferon|off;

HTTP的包体是否存储在内存buffer当中;默认为off;

3、cleint_body_buffer_sizesize; #默认为8k

nginx接收HTTP包体的内存缓冲区大小;

4、client_body_temp_pathdir-path [level1 [level2 [level3]]]; #是个目录文件夹,可以是多级目录,多级目录可以防止一个目录下文件过多而导致检索变慢

HTTP包体存放的临时目录;

client_body_temp_path/var/tmp/client/ 1 2

1 1个16进制的1级子目录,即1x16等于16个16进制的1级子目录

2 2个16进制的2级子目录,即16x16等于256个16进制的二级子目录

5、client_header_buffer_sizesize;

正常情况下接收用户请求的http报文header部分时分配的buffer大小;默认为1k;

6、large_client_header_buffersnumber size;

存储超大Http请求首部的内存buffer大小及个数;

7、connection_pool_sizesize;

nginx对于每个建立成功的tcp连接都会预先分配一个内存池,此处即用于设定此内存池的初始大小;默认为256;

8、request_pool_sizesize;

nginx在处理每个http请求时会预先分配一个内存池,此处即用于设定此内存池的初始大小;默认为4k;

文件传输及压缩:

include/etc/nginx/mime.types;在当前文件中包含另一个文件的内容,可以/opt/nginx.d/*.conf

default_typetext/html; 设置文件使用的默认的MIME-type。

charsetUTF-8;设置头文件中的默认的字符集

gzipon; 告诉nginx采用gzip压缩的形式发送数据,这将会减少我们发送的数据量。

gzip_disable"msie6"; 为指定的客户端禁用gzip功能

#gzip_staticon;gzip_static告诉nginx在压缩资源之前,先查找是否有预先gzip处理过的资源,从而允许你使用最高压缩比,这样nginx就不用再压缩这些文件了

gzip_proxiedany 许或者禁止压缩基于请求和响应的响应流。我们设置为any,意味着将会压缩所有的请求.

gzip_min_length1000;设置对数据启用压缩的最少字节数。如果一个请求小于1000字节,我们最好不要压缩它,因为压缩这些小的数据会降低处理此请求的所有进程的速度。

gzip_comp_level4;设置数据的压缩等级。这个等级可以是1-9之间的任意数值,9是最慢但是压缩比最大的。我们设置为4,这是一个比较折中的设置。

gzip_typestext/plaintext/cssapplication/jsonapplication/xavascripttext/xmlapplication/xmlapplication/xml+rsstext/javascript; 设置需要压缩的数据格式。

举例设置nginx:

user www-data;

pid /var/run/nginx.pid;

worker_processes auto;

worker_rlimit_nofile 100000;

events {

worker_connections 2048;

multi_accept on;

use epoll;

}

http {

server_tokens off;

sendfile on;

tcp_nopush on;

tcp_nodelay on;

access_log off;

error_log /var/log/nginx/error.log crit;

keepalive_timeout 10;

client_header_timeout 10;

client_body_timeout 10;

reset_timedout_connection on;

send_timeout 10;

limit_conn_zone $binary_remote_addr zone=addr:5m;

limit_conn addr 100;

include /etc/nginx/mime.types;

default_type text/html;

charset UTF-8;

gzip on;

gzip_disable "msie6";

gzip_proxied any;

gzip_min_length 1000;

gzip_comp_level 6;

gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

open_file_cache max=100000 inactive=20s;

open_file_cache_valid 30s;

open_file_cache_min_uses 2;

open_file_cache_errors on;

include /etc/nginx/conf.d/*.conf;

include /etc/nginx/sites-enabled/*;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。