nginx的localtion指令详解

nginx的localtion指令详解

Nginx 的 HTTP 配置主要包括三个区块,结构如下:

http {                      # 这个是协议级别
  include mime.types;
  default_type application/octet-stream;
  keepalive_timeout 65;
  gzip on;
    server {             # 这个是服务器级别
      listen 80;
      server_name localhost;
        location / {  # 这个是请求级别
          root html;
          index index.html index.htm;
        }
      }
}

1、location 区段

  • location 是在 server 块中配置,根据不同的 URI 使用不同的配置,来处理不同的请求。
  • location 是有顺序的,会被第一个匹配的location 处理。
  • 基本语法如下:
    location [=|~|~*|^~|@] pattern{……}
    2、location 前缀含义
    = 表示精确匹配,优先级也是最高的 
    ^~ 表示uri以某个常规字符串开头,理解为匹配url路径即可 
    ~ 表示区分大小写的正则匹配 
    ~* 表示不区分大小写的正则匹配
    !~ 表示区分大小写不匹配的正则
    !~* 表示不区分大小写不匹配的正则
    / 通用匹配,任何请求都会匹配到
    @ 内部服务跳转
    查找顺序和优先级
    = 大于 ^~ 大于 ~|~*|!~|!~* 大于 /
    多个location配置的情况下匹配顺序为:首先匹配 =,其次匹配^~, 其次是按正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。
    3、location 配置示例
    3、location 配置示例
    1、没有修饰符 表示:必须以指定模式开始
    server {
    listen 80;
    server_name localhost;

    location /abc {
    root /home/www/nginx;
    index 2.html;
    }

    那么,如下是对的:
    http://192.168.1.9/abc
    2、=表示:必须与指定的模式精确匹配
    server {
    listen 80;
    server_name localhost;
    access_log /var/log/nginx/http_access.log main;

    location / {
    root /usr/share/nginx/html;
    index a.html index.htm;
    }
    location = / {
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值