Nginx配置规则详解,配置解释
1. Nginx配置文件(nginx.conf)
默认在Linux上安装的Nginx,配置文件在安装的nginx目录下的conf目录下,名字叫做nginx.conf
nginx.conf主要由三部分组成
- 全局块,
- events块
- http块
配置文件结构:
自带默认配置文件
# 全局块
------------------------------------------------------------------------------
#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块
events {worker_connections 1024;
}# http块
http {
------------------------------------------------------------------------------# 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块
server {
# server全局块listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;# location块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;#}
}# 可以配置多个server块 }
下边分别解释三个模块
1. 全局块
就是配置文件从头开始到events块之间的内容,主要设置的是影响nginx服务器整体运行的配置指令
比如worker_process, 值越大,可以支持的并发处理量也越多,但是还是和服务器的硬件相关
2. events块
events 块涉及的指令主要影响 Nginx 服务器与用户的网络连接,常用的设置包括是否开启对多 work process下的网络连接进行序列化,是否允许同时接收多个网络连接,选取哪种事件驱动模型来处理连接请求,每个 word process 可以同时支持的最大连接数等。上述例子就表示每个 work process 支持的最大连接数为 1024.这部分的配置对 Nginx 的性能影响较大,在实际中应该灵活配置
3. http块
包括http全局块,以及多个server块
http全局块
http 全局块配置的指令包括文件引入、 MIME-TYPE 定义、日志自定义、连接超时时间、单链接请求数上限等。
server块
这块和虚拟主机有密切关系,虚拟主机从用户角度看,和一台独立的硬件主机是完全一样的,该技术的产生是为了节省互联网服务器硬件成本。
每个 http 块可以包括多个 server 块,而每个 server 块就相当于一个虚拟主机
而每个 server 块也分为全局 server 块,以及可以同时包含多个 location 块。
server全局块
最常见的配置是本虚拟机主机的监听配置和本虚拟主机的名称或 IP 配置
。
#这一行表示这个server块监听的端口是80,只要有请求访问了80端口,此server块就处理请求listen 80;
# 表示这个server块代表的虚拟主机的名字server_name localhost;
location块
一个 server 块可以配置多个 location 块。
主要作用是根据请求地址路径的匹配,匹配成功进行特定的处理
这块的主要作用是基于 Nginx 服务器接收到的请求字符串(例如 server_name/uri-string),对虚拟主机名称(也可以是 IP 别名)之外的字符串(例如 前面的 /uri-string)进行匹配,对特定的请求进行处理。地址定向、数据缓存和应答控制等功能,还有许多第三方模块的配置也在这里进行。
# 表示如果请求路径是/就是用这个location块进行处理
location / {root html;index index.html index.htm;}
还有UpStream,这个可以用来转发TCP协议
# 在http块中的全局块中配置
# upstream固定写法 后面的myserver可以自定义
upstream myserver{server 192.168.80.102:8081;server 192.168.80.102:8082;
}# server配置server {# 监听80端口listen 80; #location块location / {
# 反向代理到上面的两台服务器 写上自定义的名称proxy_pass http://myserver;}}
Nginx配置规则详解,配置解释相关推荐
- Nginx rewrite 规则详解
Nginx rewrite规则详解 rewire规则也称为规则重写,主要功能是实现浏览器访问 Http Uri的跳转,其正则表达式是基于Perl语言.通常而言,几乎所有的Web服务器均可以支持URL重 ...
- 运维之道 | Nginx rewrite 规则详解
Nginx rewrite 规则详解 一.rewrite规则概念 rewirte 规则也称为规则重写,主要功能是实现浏览器访问 HTTP URL 的跳转,其正则表达式是基于 Perl 语言.通常而言, ...
- DUBBO配置规则详解
DUBBO在配置这一块做的确实很完美,提供很很多参数,以及提供了多种渠道.下面进入正题,看看DUBBO怎么加载配置的.在讲这些之前,先给大家介绍一下在DUBBO源码层面定义了哪些类来存储各个模块的配置 ...
- ngnix location 配置规则详解
带=好位精准匹配,不会被正则覆盖,什么不带为一般匹配,一般匹配会被正则覆盖!!!! port port; server serername; 方式1: locatiom /regex{ pro ...
- nginx rewrite规则详解
Nginx Rewrite Rewrite Rewrite介绍 nginx通过ngx_http_rewrite_module模块支持url重写.支持if条件判断,但不支持else.另外该模块需要PCR ...
- 从一份配置清单详解Nginx服务器配置
概述 在前面<Nginx服务器开箱体验> 一文中我们从开箱到体验,感受了一下Nginx服务器的魅力.Nginx是轻量级的高性能Web服务器,提供了诸如HTTP代理和反向代理.负载均衡.缓存 ...
- 九爷带你了解 nginx 日志配置指令详解
nginx日志配置指令详解 日志对于统计排错来说非常有利的. 本文总结了nginx日志相关的配置如 access_log.log_format.open_log_file_cache.log_not_ ...
- nginx下gzip配置参数详解
这篇文章主要介绍了nginx下gzip配置参数详解,本文同时给出了配置例子,以及一些注意事项,需要的朋友可以参考下 Nginx自带的有gzip模块 http://wiki.nginx.org/Ngin ...
- Ceph优化系列(二):Ceph主要配置参数详解
转载:Ceph配置参数详解 概述 Ceph的配置参数很多,从网上也能搜索到一大批的调优参数,但这些参数为什么这么设置?设置为这样是否合理?解释的并不多 本文从当前我们的ceph.conf文件入手,解释 ...
- Equinox OSGi系列之三 Equinox配置参数详解
1.概述 上文我们对Equinox OSGi运行环境的组成及搭建过程做了详细讲述.本文主要对Equinox OSGi运行环境的可配置参数及其作用加以介绍,从而使用户在实际使用过程中可以对Equinox ...
最新文章
- 2007年你必须学习的10项.NET技术
- 电气实现:蒙特卡洛法 模拟多台电动汽车无序出力负荷和(matlab、python实现)
- 【面试必备】java写spark好不好
- 前沿 | 加州理工大学什么是Imitation Learning(模仿学习)
- UI基础设计规范,确定不了解一下?
- linux内核percpu变量声明,Linux内核对per-cpu变量的实现
- 3. Spring Boot 从零开始学习
- 基于SSM实现学生竞赛管理系统
- 火狐浏览器 Mozilla Firefox v36.0.3 便携增强版
- KEGG 下载 Pathway 通路数据
- 【斗鱼直播源】浏览器抓取真实直播源地址(纯前端JS PHP解析源码)
- [渝粤教育] 西南科技大学 信息组织与检索 在线考试复习资料2021版
- 台式计算机关闭屏幕快捷键,多种电脑屏幕关闭方法推荐
- 浏览器如何在f12中查看接口地址_经过浏览器中的F12中来查看接口的入参、出参和网页响应时间(新手教程)...
- 用C语言程序实现十进制转换为二进制
- 向量空间模型原理(VSM)
- might和could的区别用法_情态动词may与might用法
- STM32模拟IIC驱动OLED屏 原理+源码
- Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
- java生成以及解析二维码
热门文章
- Struts 学习笔记之ActionForm
- Directx游戏中嵌入IE浏览器实现过程
- MySQL学习笔记(12)—— SQL触发器:
- 解决:启动word等office相关软件时,比较慢,会卡在一步Foxit PDF Creator COM Add-in很久
- XML的四种解析器原理及性能分析比较
- 计算机网络技术 虚拟仿真教学实验,虚拟仿真实验教学优秀课件
- 用excel做logistic回归分析_利用Excel进行统计分析——入门篇
- 传奇架设教程GOM引擎微端设置方法
- android切图规范,APP切图详细规范终极指南
- python爬取链家租房信息_爬取链家租房信息数据分析