Nginx的配置文件介绍

Nginx的配置文件介绍

Nginx的配置文件是nginx.conf,它在/data/program/nginx/conf目录下

[root@base-1 conf]# pwd
/data/program/nginx/conf

nginx.conf介绍

nginx.conf配置文件里有3个部分,分别是:全局块,events块,http块;在http块中又包含http全局块,多个server块;每个server块中又包含server全局块以及多个location块。

  1. 全局块是配置文件从开始到events块之间的内容,主要有worker_processes,它表示工作进程数,一般设置为服务器CPU的核数。

  2. events块主要有worker_connections,它表示Nginx服务器与用户的网络连接数,Nginx支持的网络连接数就是worker_processes配置数字乘以worker_connections配置数字,假如worker_processes=4,worker_connections=1024,那么该Nginx服务器支持的连接数就是4 X 1024 = 4096个。

  3. http块是Nginx服务器配置中的重要组成部分,反向代理,负载均衡,动静分离等多数功能都在这里配置。

  4. server块里进行虚拟主机的配置,有3种配置,分别是基于IP、基于端口号、基于域名的虚拟主机。

  5. location块在整个Nginx配置文档中起着非常重要的作用,很多功能的实现需要在location块种进行配置。

location使用介绍

  • 配置语法介绍

location的语法结构

location [ = | ~ | ~* | ^~ ] uri { ... }

其中,uri是待匹配的请求字符串,可以是标准uri(不含正则表达式的uri),也可以是正则uri(使用正则表达式的uri);方括号里的部分是可选项,用来表示请求字符串与uri的匹配方式。“=”,用于标准uri前,要求请求字符串与uri完全匹配,一般称之为精准匹配“^~”,用于标准uri前,一般称为前缀匹配“~*”,用于表示uri包含正则表达式,不区分大小写“~”,用于表示uri包含正则表达式,且区分大小写

配置规则介绍
  • 在没有可选项的情况下,指的就是通用匹配

  1. Nginx服务器首先在server块的多个location中搜索是否有标准uri和请求字符串匹配,如果有多个可以匹配,就记录匹配度最高的一个。

  2. 然后,服务器再用location块中的正则uri和请求字符串匹配,当第一个正则uri匹配成功,结束搜索,并使用这个location块处理该请求;

  3. 如果正则匹配全部失败,就使用刚才记录的匹配度最高的location块处理该请求。

使用 “=” 修饰uri,指的是精准匹配

  • 如果匹配成功,就停止继续向下搜索,立即用匹配到的location块处理该请求。

使用 “^~” 修饰uri,指前缀匹配

  • 要求Nginx服务器找到标识uri和请求字符串匹配度最高的location后,立即使用此location块处理该请求,而不再使用正则uri匹配。

使用 “~*”或者 “~” 修饰uri,指正则匹配

  • 正则匹配会覆盖通用匹配。

规则的优先级

从上面的配置规则可以看出,精准匹配的优先级最高,前缀匹配的优先级第二,正则匹配第三。

nginx.conf文件简化版配置示例

worker_processes  1;

events {
  worker_connections 1024;
}

http {
  include       mime.types;
  default_type application/octet-stream;
  sendfile       on;
  keepalive_timeout 65;

  server {
      listen       80;
      server_name localhost;
      location / {
          root   html;
          index index.html index.htm;
      }
      # redirect server error pages to the static page /50x.html
      error_page   500 502 503 504 /50x.html;
      location = /50x.html {
          root   html;
      }
  }
}

实例演示环境介绍(Centos+Nginx+Tomcat)

操作系统是CentOS  7.5

Nginx服务器版本是nginx-1.14.1,IP=192.168.1.8

Tomcat服务器版本是apache-tomcat-8.5.35,两台Tomcat服务器

Tomcat1的IP=192.168.1.9

Tomcat2的IP=192.168.1.10

架构图如下:

640?wx_fmt=png


至此Nginx的基础介绍完毕,后续将进行实例演示。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值