[nginx] nginx的变量拼接与if判断

当在nginx里面使用变量的时候

可能会有变量拼接的需求 , 不管是多个变量还是一个变量和其他字符串

都可以这样来实现

set $allUrl  "${host}${request_uri}";

$host和 $request_uri 都是内置变量 

拼接在一起的话 , 使用这个set指令

当需要使用if判断的时候 , 一定得注意格式 , 因为nginx检测格式非常严格 , 注意空格

注意看 if 和 括号 变量 之间都有空格 ,  相等判断是 =   不是  ==

        set $allUrl  "${host}${request_uri}";
        if ( $allUrl = "webmail.sina.net/test" ) { 
                return 500;
        }  

 这样就能匹配的到

开源作品

GO-FLY,一套可私有化部署的免费开源客服系统,安装过程不超过五分钟(超过你打我 !),基于Golang开发,二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的网页在线客服系统,致力于帮助广大开发者/中小站长快速整合私有客服功能
github地址:go-fly
官网地址:https://gofly.sopans.com

赞赏作者

微信交流

原文地址:https://www.cnblogs.com/taoshihan/p/14784323.html