首页 > 系统相关 >nginx 常用功能之map映射

nginx 常用功能之map映射

时间:2023-08-03 16:05:33浏览次数:50  
标签:map account 变量 映射 nginx json arg

nginx 常用功能之map映射(本文背景:获取url不用的查询参数返回对应的数据)

环境需求: 现有url访问地址 https://www.xxxxxx.com/page?account=xxxxx 获取

account 传参 不同的参数需要返回不同的文件内容

一、先上配置项

map $arg_account $json_file {
default /default_null.json;
user123 /user123.json;
user456 /user456.json;
}

nginx 常用功能之map映射_字符串

二、解释:"$arg_accout" 不是内部变量,而是一个查询参数的变量,当客户端通过http/https 请求发送数据时,可以通过url中的查询参数传递数据

例如RUL中 https://example.com/page?account=user123 'account' 就是查询参数的名称 而user123 就是他的值。

    nginx提供了一系列用于访问的查询参数的变量,上述 '$arg_' 开头的变量 用于获取查询参数的值。 对于上述例子,要获取account这个查询参数的值,使用的则就是   '$arg_account' 变量

三、nginx 中对于map 变量的解释

其中,$arg_accout 是要映射的变量,可以是任何有效的 Nginx 变量,如 nginx 常用功能之map映射_nginx_02args、nginx 常用功能之map映射_nginx_03json_file是映射后的新变量名(名字为自定义),可以自定义;key 是映射的键,可以是字符串、正则表达式或者变量;value 是映射的值,可以是字符串、变量或者表达式;default 是默认值,当没有匹配到任何键时使用。

map 指令的作用是将 $variable 的值根据键值对映射关系映射到 $new_variable 上,并且这个映射是在配置文件加载时进行的,不会在请求处理期间进行计算。一旦映射关系确定,映射的值会保存在 $new_variable 中,并可以在配置文件中的其他地方使用。

标签:map,account,变量,映射,nginx,json,arg
From: https://blog.51cto.com/u_14236966/6949844

相关文章

  • Linux:安装部署Tomcat和Nginx
    学习自:linux环境安装部署tomcat、nginx_ernesto_ji的博客-CSDN博客系统相关Linux服务器:Linuxrhel1.myguest.virtualbox.org 3.10.0-1160.el7.x86_64虚拟机平台:VirtualBox终端模拟器:Tabby步骤1、Linux环境安装部署Tomcat1)wget下载安装包apache-tomcat-8.5.82.tar.gz①先......
  • kali渗透测试之三操作系统识别-nmap
    识别操作系统:    在确定目标主机在线后,应当识别他们使用的操作系统,这个阶段的工作称为识别操作系统(也称为操作系统指纹识别),识别操作系统的的方式分为两种:主动式和被动式。主动式识别工具向目标机器发送数据包,并根据目标的响应确定其使用的操作系统,这种方式的优点在于探测......
  • docker部署项目,涉及springboot\tomacat\nginx\es
    sudoapt-getinstalldocker-ce=5:20.10.6~3-0~debian-bullseyedocker-ce-cli=5:20.10.6~3-0~debian-bullseyecontainerd.iodocker部署项目信息:--172.17.0.1   172.16.22.401、docker部署tomcatdockerrun-d --namestock-admin--restartalways-p81:8080-e"TZ......
  • #yyds干货盘点#map()和flatMap()的区别?
    在Java8中,map()和flatMap()是StreamAPI中的两个常用方法,用于对流中的元素进行转换操作。它们的主要区别在于它们的返回类型和转换方式。map()方法:map()方法将流中的每个元素都映射到另一个对象。它接收一个函数作为参数,该函数将当前流中的每个元素转换为另一个对象。map()方法的......
  • nginx缓存灰度
    upstreamhilinux_01{server127.0.0.1:8080max_fails=1fail_timeout=60;}upstreamhilinux_02{serverx.x.x.x:8080max_fails=1fail_timeout=60;}server{listen80;server_nametest.test.com;#gzipconfiggzipon;gzip......
  • linux环境部署nginx
    Linux环境下Nginx的离线安装与在线安装详细步骤参考地址:Nginx安装步骤——离线安装与在线安装详解_nginx依赖包_Olrookie的博客-CSDN博客CentOS7使用firewall-cmd打开关闭防火墙与端口以开放8080端口为例_firewall-cmd--add-port=8080/tcp--permanent_克豪的博客-CSDN博客一、......
  • 问chatgpt:java或者三方jar包,bean属性复制的,但是两个字段的名称不一致,有没有这样的方
    是的,Java中有一些库和框架可以实现对象属性的复制和映射,而无需手动编写getter和setter方法。其中比较常用的是ApacheCommonsBeanUtils和SpringFramework的BeanUtils。使用ApacheCommonsBeanUtils,你可以使用copyProperties方法来复制对象属性。示例代码如下:点击查......
  • 学习mp之字段映射
    在创建的表中有一个字段中没有值时需要查询表信息可以使用@TableField("`字段名`")自动为该字段补充信息。如果需要忽略字段查询内容可以使用@TableField(select=false)来忽略查询 视图字段:在实体类中创建但是在表中没有创建的字段如果创建的表中没有该字段但仍需select表......
  • 解决 heatmap.js 'Cannot assign to read only property 'data' of object' 问题与 p
    一、问题背景问题是这样发生的,因为项目中需要实现热力图的功能,所以使用了第三方的库heatmap.js。但是在一些浏览器中使用它时,会出现这个错误:>UncaughtTypeError:Cannotassigntoreadonlyproperty'data'ofobject'#<ImageData>'出现问题的原因是因为img.data=im......
  • golang用pgx查询数据时如何将查询结果方便的放入Map中
    pgx库简介下面是来自官网的简介:pgx-PostgreSQL驱动和工具包pgx是一个用于PostgreSQL的纯Go语言驱动和工具包。pgx驱动是一个底层的高性能接口,暴露了PostgreSQL特有的功能,如LISTEN/NOTIFY和COPY。它还包含一个标准database/sql接口的适配器。工具包组件是一组相关的包,实......