nginx的配置详解一
2018-01-14 15:12
561 查看
一、下面是nginx的默认一些配置项,我们对每一个配置项进行解释。
2、nginx配置文件的主要组成部分:
主配置文件:
在主配置文件中引用就可以了:
fastcgi的配置文件:
配置文件组织结构:
http的配置结构:
配置详解:
1、user:指定用户运行work进程的用户和用户组。
2、pid存放nginx进程号的文件位置
3、worker_rlimit_nofile #; #号表示数字。
指定一个work进程所能够打开的最大文件描述符数量
4、worker_rlimit_sigpending #;
指定每个用户能够发往worker进程的信号的数量
5、worker_connections #;
每个work进程所能够响应的最大并发请求数量
总的并发请求数量=worker_process*worker_connections
6、accept_mutex[on|off]
各work接收用户请求的负载均衡锁;启动时表示让多个worker轮流的,序列化的响应请求。
7、lock_file /PATH/TO/LOCK_FILE;
8、server{}定义一个虚拟主机
注意:
基于port端口
listen指令监听在不同的端口
基于hostname
server_name指向不同的主机名
定义一个虚拟主机,其中端口改为9011,server_name这里给出了2个主机名,支持正则匹配。然后加载后我们去浏览器验证一下:
server_name支持多赋值。
9、root:
设置web资源的路径映射,用于指明请求的url对应的文档的目录路径,上图中root的详细地址是/usr/local/nginx/html/www/下有一个wyl.html文件。
10、location
允许根据用户请求的url来匹配定义的各个location,匹配到时,此请求将被相应的location块中的配置所处理,即用于为需要用到专用配置的url提供特定的配置
现在浏览器请求:http://www.b.com:9011/www/wyl.html,下图中档浏览器输入url时,nginx.conf中的location的配置如下所示,wyl/中的斜杠对应/www/中开头的那个斜杠。然后才可以正确路径访问到该目录下的wyl.html文件。
11、alais只能用于location配置段,定义路径别名。如下图:
这里和上面的发生了变化,注意这里的切换主机名,便于深入理解。
注意:
二:性能优化相关的配置
1、work_processes #;
worker进程的个数,通常应该为物理cpu核心数量-1.
2、worker_cpu_affinity CPUMASK CPUMASK…绑定到那几个cpu核心上,还要做隔离cpu操作。
例如:worker_cpu_affinity 00000001 00000011
3、work_priority nice [-20 ,19]
三、调试和定位问题的配置:
1、daemon off|on
是否以守护进程的方式启动nginx
2、master_process on|off
是否以master/worker 模型运行nginx
3、error_log /PATH/TO/ERROR_LOG level
错误日志文件及其级别,出于调试的需要,设置为debug.编译时需要加上–wiht-debug
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5 cdc6 m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} }
2、nginx配置文件的主要组成部分:
主配置文件:
nginx.conf include conf.d/*.conf
在主配置文件中引用就可以了:
fastcgi的配置文件:
fastcgi_params uwsgi_params
配置文件组织结构:
main block event { ... } http{ .... }
http的配置结构:
http{ server{ server_name root alias location /url/ { } ....可以有多个location } ....多个server{ } }
配置详解:
1、user:指定用户运行work进程的用户和用户组。
Syntax: user user [group]; Default: user nobody nobody; Context: main
2、pid存放nginx进程号的文件位置
Syntax: pid file; Default: pid logs/nginx.pid; Context: main Defines a file that will store the process ID of the main process.
3、worker_rlimit_nofile #; #号表示数字。
指定一个work进程所能够打开的最大文件描述符数量
4、worker_rlimit_sigpending #;
指定每个用户能够发往worker进程的信号的数量
5、worker_connections #;
每个work进程所能够响应的最大并发请求数量
总的并发请求数量=worker_process*worker_connections
6、accept_mutex[on|off]
各work接收用户请求的负载均衡锁;启动时表示让多个worker轮流的,序列化的响应请求。
7、lock_file /PATH/TO/LOCK_FILE;
8、server{}定义一个虚拟主机
server{ listen PORT; server_name NAME; root /PATH/TO/DOCUMENTROOT }
注意:
基于port端口
listen指令监听在不同的端口
基于hostname
server_name指向不同的主机名
定义一个虚拟主机,其中端口改为9011,server_name这里给出了2个主机名,支持正则匹配。然后加载后我们去浏览器验证一下:
server_name支持多赋值。
9、root:
设置web资源的路径映射,用于指明请求的url对应的文档的目录路径,上图中root的详细地址是/usr/local/nginx/html/www/下有一个wyl.html文件。
10、location
允许根据用户请求的url来匹配定义的各个location,匹配到时,此请求将被相应的location块中的配置所处理,即用于为需要用到专用配置的url提供特定的配置
现在浏览器请求:http://www.b.com:9011/www/wyl.html,下图中档浏览器输入url时,nginx.conf中的location的配置如下所示,wyl/中的斜杠对应/www/中开头的那个斜杠。然后才可以正确路径访问到该目录下的wyl.html文件。
11、alais只能用于location配置段,定义路径别名。如下图:
这里和上面的发生了变化,注意这里的切换主机名,便于深入理解。
注意:
二:性能优化相关的配置
1、work_processes #;
worker进程的个数,通常应该为物理cpu核心数量-1.
2、worker_cpu_affinity CPUMASK CPUMASK…绑定到那几个cpu核心上,还要做隔离cpu操作。
例如:worker_cpu_affinity 00000001 00000011
3、work_priority nice [-20 ,19]
三、调试和定位问题的配置:
1、daemon off|on
是否以守护进程的方式启动nginx
2、master_process on|off
是否以master/worker 模型运行nginx
3、error_log /PATH/TO/ERROR_LOG level
错误日志文件及其级别,出于调试的需要,设置为debug.编译时需要加上–wiht-debug
相关文章推荐
- Nginx配置文件详解
- linux下nginx配置https详解
- Nginx配置详解
- Nginx配置文件详解
- Nginx简介及配置文件详解
- nginx服务器access_log日志分析及配置详解
- nginx rewrite重写规则与防盗链配置方法教程详解
- nginx配置详解
- 【Nginx】Nginx配置文件nginx.conf中文详解
- nginx 配置文件详解
- Nginx配置文件(nginx.conf)配置详解
- (总结)Nginx配置文件nginx.conf中文详解
- nginx.conf配置文件的基本详解
- Nginx负载均衡配置实例详解
- Nginx配置文档详解
- Nginx配置文件(nginx.conf)配置详解
- Nginx配置详解
- Nginx配置文件nginx.conf详解(转)
- Nginx安装及配置文件nginx.conf详解
- Nginx配置文件(nginx.conf)配置详解