`
enetor
  • 浏览: 188119 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Nginx Location简单语法与配置

 
阅读更多

二、Location语法 语法:location [=|~|~*|^~] /uri/ { … }
注:
1、~   为区分大小写匹配
2、~* 为不区分大小写匹配
3、!~和!~*分别为区分大小写不匹配 及不区分大小写
不匹配
示例一:
location  / {
}
匹配任何查询,因为所有请求都以 / 开头。但是正则表达式规则将被优先和查询匹配。
示例二:
location =/ {}
仅仅匹配/

示例三:
location ~* \.(gif|jpg|jpeg)$ {
rewrite \.(gif|jpg)$ /logo.png;

注:不区分大小写匹配任何以gif,jpg,jpeg结尾的文件

三、ReWrite语法
last - 基本上都用这个Flag。
break - 中止Rewirte,不在继续匹配
redirect - 返回临时重定向的HTTP状态302
permanent - 返回永久重定向的HTTP状态301

1、下面是可以用来判断的表达式:
-f和!-f用来判断是否存在文件
-d和!-d用来判断是否存在目录
-e和!-e用来判断是否存在文件或目录
-x和!-x用来判断文件是否可执行
2、下面是可以用作判断的全局变量
例:http://localhost:88/test1/test2/test.php
$host:localhost
$server_port:88
$request_uri:
http://localhost:88/test1/test2/test.php
$document_uri:/test1/test2/test.php
$document_root:D:\nginx/html
$request_filename:D:\nginx/html/test1/test2/test.php

四、Redirect语法
    server {
    listen 80;
    server_name start.igrow.cn;
    index index.html index.php;
    root html;
    if ($http_host !~ "^www\.itlearner\.com$ {
         rewrite ^(.*)
http://www.itlearner.com $1 redirect;
    }
    }

五、防盗链
location ~* \.(gif|jpg|swf)$ {
  valid_referers none blocked start.igrow.cn sta.igrow.cn;
  if ($invalid_referer) {
  rewrite ^/
http://$host/logo.png;
  }
}

六、根据文件类型设置过期时间
location ~* \.(js|css|jpg|jpeg|gif|png|swf)$ {
if (-f $request_filename) {
   expires    1h;
   break;
}
}

七、禁止访问某个目录
location ~* \.(txt|doc)${
   
  root /data/www/wwwroot/linuxtone/test;
   
deny all;
}

++ 一些可用的全局变量
$args
$content_length
$content_type
$document_root
$document_uri
$host
$http_user_agent
$http_cookie
$limit_rate
$request_body_file
$request_method
$remote_addr
$remote_port
$remote_user
$request_filename
$request_uri
$query_string
$scheme
$server_protocol
$server_addr
$server_name
$server_port
$uri

分享到:
评论

相关推荐

    nginx配置location时容易出现的误区

    ### Nginx 配置 Location 时常见的误区详解 在 Nginx 的配置过程中,`location` 是一个非常重要的概念,用于控制特定 URL 模式的请求处理方式。然而,在实际应用中,不少开发者对 `location` 的理解存在一定的误区...

    Nginx 反向代理 location 语法规则说明

    Nginx 的 Location 语法规则是 Nginx 反向代理中最重要的配置部分之一。Location 规则用于匹配客户端请求的 URI,并将其路由到相应的服务器或应用程序。下面我们详细解释 Location 语法规则的语法、匹配顺序和示例。...

    nginx location配置详细解释.pdf

    ### Nginx Location配置详细解析 #### 一、引言 Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在 Linux 环境下有着非常好的性能表现。在 Nginx 的配置文件中,`location` ...

    nginx的各项详细配置-超多注释

    本篇文章将详细介绍Nginx的各项配置,并结合提供的"nginx.conf"配置文件和"nginx.txt"说明文件,深入解析Nginx的配置语法和应用场景。** ### 1. Nginx基本结构 Nginx的配置文件主要由多个块组成,包括全局块、...

    nginx语法规则.docx

    Nginx 语法规则是 Nginx 配置文件的核心组成部分,它规定了 Nginx 如何处理用户的请求。理解 Nginx 语法规则对于配置 Nginx 是非常重要的。本文详细介绍了 Nginx 语法规则的各种模式和匹配规则。 1. 精确匹配(=) ...

    Nginx关于location的匹配规则详解.docx

    本文将深入探讨Nginx `location`的匹配机制、语法以及常见用法。 1. **匹配类型** - **精确匹配**:使用`=号`,如`location = /path/ {}`,只匹配完全相同的URL。 - **前缀匹配**:不带`=`的`location /path/ {}`...

    nginx nginx.conf配置

    修改配置后,使用`nginx -t`命令检查配置文件的语法是否正确,无误后用`nginx -s reload`命令平滑重启Nginx以应用新配置。 总的来说,`nginx.conf`是Nginx的核心,通过灵活的配置可以实现多种服务和功能,适应各种...

    详解Nginx location 匹配规则

    语法规则 location [=|~|~*|^~] /uri/ { … } 模式 含义 location = /uri = 表示精确匹配,只有完全匹配上才能生效 location ^~ /uri ^~ 开头对URL路径进行前缀匹配,并且在正则之前。 location ~ ...

    Nginx Location 指令简明指南

    本文将详细介绍Nginx Location指令的基本语法、匹配过程、配置实例以及Nginx中的全局变量。 首先,Location指令的基本语法非常直观,它使用不同的前缀来表达不同的匹配规则。指令格式为: ```nginx location [修饰...

    实战Nginx及基础配置与管理

    在学习Nginx配置与管理之前,首先需要了解其基本概念和用途。Nginx在设计之初就非常注重高并发连接的处理,采用了基于事件驱动的架构模式,而且因为其代码的模块化,可以轻松地实现功能的扩展。Nginx的处理速度和高...

    02nginx动态配置.zip

    这个例子可能会涵盖简单的反向代理、虚拟主机配置、日志设置等内容,是学习Nginx管理的好资料。 在实践中,掌握Nginx的配置和管理技巧对于优化Web服务性能至关重要。理解配置文件结构、熟练运用启动和管理命令,...

    nginx配置.zip

    - **错误检查**:使用`nginx -t`命令检查配置文件的语法是否正确。 6. **与Java应用的结合** Nginx常作为Java应用(如Spring Boot应用)的反向代理,通过`proxy_pass`指令将HTTP请求转发到后端Java服务器。例如:...

    linux下nginx安装、配置实战

    对于更复杂的配置,如SSL/TLS证书配置、URL重写、负载均衡等,需要深入学习Nginx的配置语法和模块功能。你可以在Nginx的官方文档中找到更多详细信息。 总的来说,安装和配置Nginx是一个多步骤的过程,涉及到Linux...

    Nginx中Location从零开始的配置教程

    Nginx location 配置语法  1. location [ = | ~ | ~* | ^~ ] uri { ... }  2. location @name { ... }  location 配置可以有两种配置方法 1.前缀 + uri(字符串/正则表达式) 2.@ + name 前缀含义  = :...

    nginx和PHP配置

    5. **验证配置**: 创建一个简单的HTML文件(如1.html),放置于设置的静态文件目录下,并在浏览器中访问`http://localhost/1.html`,若能正常显示,则表明Nginx已正确配置。 #### PHP配置步骤 **二、安装与配置PHP...

    Nginx学习丛书 Nginx应用与提高

    这一章节详细介绍了Nginx的基础配置文件结构,包括主配置文件、服务器块和location块等。同时,讲解了如何进行性能优化,如调整并发连接数、启用HTTP/2协议、缓存策略等,以提升服务器响应速度和处理能力。 2. **...

    详解Nginx之Location配置(Location匹配顺序)

    在Nginx配置中,`location`指令是核心部分,用于根据URI(统一资源标识符)来决定如何处理请求。本篇文章将深入探讨`location`配置的匹配顺序及其在实际应用中的作用。 ### 1. `location`的基础语法 `location`...

    nginx设置rewrite规则

    总的来说,配置Nginx的rewrite规则是提升Web应用性能和用户体验的关键步骤,需要理解正则表达式和Nginx的配置语法,才能正确有效地实现URL重写。在LNMP环境中,根据实际的部署类型选择合适的配置文件,并确保规则的...

    nginx搭建配置详细说明

    3.4. nginx重要指令之location 4. nginx中的rewrite 4.1. 什么是rewrite 4.2. rewrite的命令的作用域和优先级 4.3. if指令 4.3.1. if指令的语法 4.3.2. if指令中使用的逻辑运算符 4.3.3. If指令中可以使用的...

Global site tag (gtag.js) - Google Analytics