`
mingren135
  • 浏览: 72485 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

nginx学习2-变量

 
阅读更多

一、nginx变量

1)set指令:server,location

set $v 0;

 

2)map模块:http

map $v $b {

    0 'baidu';

    1 'google';

}

 

3)geo模块:http

geo  $geo  {

         default      default;

         192.168.1.0/24   aa;

         192.168.2.0/24   bb;

}

upstream  aa.server {

        server 192.168.3.1:8081;

}

upstream  bb.server {

        server 192.168.3.1:8082;

}

upstream  default.server {

        server 192.168.3.1:8080;

}

 

4)正则匹配生成变量$domain

server {

    server_name ~^(www\.)?(?<domain>.+)$;

    location / {

        root /sites/$domain;

    }

    location ~* \.(gif|jpg|jpeg)$ {

        root htdocs/$1;

    }

}

 

5)内建变量:有90%都是在ngx_variables.c定义的,剩下的跟在各个功能实现模块里面

--名称固定,如:

$request_time:请求的响应时间

$upstream_response_time:后端处理请求的时间

$uri、$request_uri、$host等

--前缀匹配:


 

6)变量类型

--只读:大部分nginx的内建变量都是只读变量,常用的例外是$args变

--可读写:

1. 核心内建变量$args、某些模块的内建变量

2. set 设置的变量

3. map、geo创建的变量

4. 正则匹配创建的变量

 

7)变量值的传递:在一次请求处理过程中经历的所有块中共享传递

1.内部rewrite、内部跳转和子请求三种情况下变量值是共享的

2.共享不代表值不改变,比如$arg_XXX这类动态计算的变量值

 

8)变量的一些特点

1.不区分大小写

2.如要获取请求头的Accept-Charset,写成$http_accept_charset

3.$request_time时间为0,因为nginx时间有缓存

 

 

 

  • 大小: 16 KB
分享到:
评论

相关推荐

    lua-nginx-module-0.10.13

    《深入理解Lua-Nginx-Module 0.10.13》 ...通过学习和掌握lua-nginx-module,开发者可以构建出更加高效、可维护的Web服务。在实际应用中,合理利用其特性,可以解决许多传统Nginx配置无法处理的复杂问题。

    Nginx模块源码 nginx-notice-2

    **Nginx模块源码分析:nginx-notice-2** Nginx是一个高性能的Web服务器和反向代理服务器,以其轻量级、高并发、低内存占用等特性在IT行业中广泛应用。开发者通常会通过编写自定义模块来扩展Nginx的功能,以满足特定...

    nginx-1.7.11-vs2013.zip

    2. 下载Nginx源码:在本案例中,源码版本为1.7.11,这是一个较早的版本,但仍然具有一定的学习价值。 3. 配置编译环境:这里使用了Visual Studio 2013作为编译工具。开发者需要安装适用于VS2013的C++编译器,并设置...

    agentzh-nginx-tutorials-zhcn.pdf

    ### Nginx教程知识点概述 ...以上知识点涵盖了《agentzh-nginx-tutorials-zhcn.pdf》文档中提及的主要技术要点,通过学习这些内容,读者可以深入了解Nginx的强大功能及其在实际应用场景中的灵活运用。

    agentzh-nginx-tutorials-en.pdf

    通过深入学习Nginx变量与指令执行顺序,用户不仅可以更好地理解和控制自己的Nginx配置,还能够在遇到复杂场景时迅速定位问题所在。这些教程不仅适用于Nginx新手,对于那些已经有一定经验的用户来说同样具有很高的...

    nginx-mruby-buildpack

    2. **配置应用**:在你的项目根目录下创建一个名为`Procfile`的文件,指定Nginx作为Web服务器。例如: ``` web: bin/start-nginx ``` 3. **添加Mruby模块**:将你的Nginx配置文件(如`nginx.conf`)和Mruby脚本...

    Nginx环境打架

    ### Nginx环境搭建知识点详解 #### 一、Nginx简介 Nginx是一款功能强大的Web服务器/反向代理服务器以及电子邮件(IMAP/POP3)代理...通过本文的学习,可以帮助读者更好地理解和掌握Nginx与Tomcat的安装与配置方法。

    lua-nginx-module完全指南.docx

    这些API使得Lua脚本可以访问和操作Nginx的各种内部状态,如服务器变量、请求对象、上游服务器等,极大地增强了Nginx的灵活性。 在实际应用中,`set_by_lua`和`set_by_lua_block`用于在HTTP上下文中设置变量,而`...

    张宴版Nginx学习 以及配置

    **Nginx学习与配置详解** Nginx是一款高性能、轻量级的Web服务器和反向代理服务器,因其高效的性能和灵活的配置而备受青睐。本文将基于“张宴版Nginx学习 以及配置”这一主题,深入探讨Nginx的基础知识、配置技巧...

    Nginx教程从入门到精通到失业

    以上内容涵盖了从 Nginx 的基础知识到高级应用的各个方面,适合从初学者到高级用户的各个层次的学习需求。通过这些知识点的学习,不仅可以掌握 Nginx 的核心功能,还能深入了解其在实际项目中的应用技巧。

    nginx-vs2010

    本项目结合了两者,使得开发者可以在不熟悉Linux环境的情况下,使用VS2010在Windows系统上编译和构建Nginx,同时加载了ngx_rtmp模块,这对于希望学习Nginx和流媒体服务的开发者来说是一大福音。 **一、Nginx核心...

    Nodejs-Nginx-Install-Script:使用Node.js应用程序安装Nginx的简单脚本

    2. **Shell脚本**:Node.js可以编写命令行工具,因此这个脚本可能是用Node.js调用shell命令来执行Nginx的安装流程,包括下载、编译和配置等步骤。 3. **Nginx安装流程**:理解Nginx的安装步骤,包括下载源码、解压...

    Nginx使用手册.docx

    - **HTTP变量**:Nginx配置文件中以`$`开头的变量,用于灵活调整服务器行为而不需重新编译或部署。 - **用途**: - 动态调整响应头 - 控制请求转发逻辑 - 实现基于用户的定制服务 - **实现机制**: - 使用其他...

    agentzh 的 Nginx 教程(版本 2016.07.21)整理成pdf 添加书签

    - **变量定义**:介绍了Nginx如何定义变量以及不同类型的变量。 - **变量使用**:讲解了在配置文件中如何使用这些变量。 - **变量作用域**:探讨了变量的作用域,例如全局变量、请求级别的变量等。 - **变量生命...

    Linux源码安装MySQL+MySQL主从+Nginx+Nginx负载均衡+redis+php+phpredis+tomcat

    2. 配置Tomcat环境变量并启动服务。 **七、Nginx负载均衡** 1. 在Nginx配置文件中添加负载均衡配置,例如使用轮询策略: ```nginx upstream backend { server backend1.example.com; server backend2.example....

    Linux自动化脚本安装Nginx使用说明

    在IT行业中,Linux系统因其稳定性和可定制性而被广泛应用于服务器管理,而Nginx则是一款高性能的HTTP和反向代理服务器,常用于...不断学习和实践,深入理解Linux和Nginx的配置与管理,将有助于你在运维领域更进一步。

    NGINX最佳实用培训.pdf

    ### NGINX最佳实用培训知识点概述 #### 一、NGINX简介 - **定义**:NGINX是一款高性能的HTTP服务器与反向代理服务器,同时也可作为IMAP...通过对NGINX的学习和掌握,可以帮助开发者更好地应对高并发场景下的服务挑战。

    nginx安装文件,Linux和windows

    2. **配置环境变量**:将Nginx的安装目录添加到系统环境变量`Path`中,以便在命令行中直接运行`nginx`命令。 3. **启动Nginx**:在Nginx的安装目录下找到`nginx.exe`,双击启动,或者在命令行中运行`nginx`。 4. **...

    agentzh写的Nginx教程

    2. Nginx教程的内容计划:教程将按照系列的方式组织,每个系列会涵盖一个主题,比如"Nginx变量"系列,这些系列可以被视为将来可能出版的Nginx书籍的章节。 3. 文章的风格:教程采用了较为随性的风格,旨在向广大...

    Nginx-应用指南。

    【Nginx应用指南】 Nginx是一款广泛应用的开源、高性能、可靠的HTTP服务器和反向代理服务器。它的设计目标是处理海量并发请求,是互联网上众多...通过不断学习和实践,可以更好地利用Nginx来构建高效稳定的网络环境。

Global site tag (gtag.js) - Google Analytics