nginx server_name 规则:

1.确切的server_name匹配

例如:

server {
listen ;
server_name www.luwen.cc luwen.cc;
...
}

2.以*通配符开始的最长字符串

server {
listen ;
server_name *.luwen.cc;
...
}

3.以*通配符结束的最长字符串

server {
listen ;
server_name www.*;
...
}

这两条有两个特别要注意的事项:

通配符名字只可以在名字的起始处或结尾处包含一个星号,并且星号与其他字符之间用点分隔。所以,“www.*.luwen.cc”和“w*.luwen.cc”都是非法的。

4.匹配正则表达式

server {
listen ;
server_name ~^(.+)-www\.luwen\.cc$;
...
}

server_name正则表达式应用:

server_name指令一项很实用的功能便是可以在使用正则表达式的捕获功能.nginx使用的正则表达式兼容PCRE。为了使用正则表达式,虚拟主机名必须以波浪线“~”起始否则该名字会被认为是个确切的名字:

如上4

如果表达式含星号,则会被认为是个通配符名字(而且很可能是一个非法的通配符名字)。不要忘记设置“^”和“$”锚点,语法上它们不是必须的,但是逻辑上是的。同时需要注意的是,域  名中的点“.”需要用反斜线“\”转义。含有“{”和“}”的正则表达式需要被引用

如上4

nginx sever_name正则的更多相关文章

  1. nginx location正则写法

    nginx location正则写法 一个示例: location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # ...

  2. nginx location正则写法(转载)

    nginx location正则写法 一个示例: location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # ...

  3. nginx rewrite正则子组最多匹配到$9

    nginx rewrite正则匹配()匹配子组最多匹配到$9,就是从$0到$9 当需要匹配更多子组时,可通过变量来实现 if ($uri ~ ^/forum-15/sortid-74/(.*?)(la ...

  4. nginx location正则

    nginx location正则写法 一个示例: location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # ...

  5. nginx location 正则匹配

    nginx 统计语句1.根据访问IP统计UV awk '{print $1}' access.log|sort | uniq -c |wc -l2.统计访问URL统计PV awk '{print $7 ...

  6. nginx grok 正则错误的输出情况

    nginx 配置: http { include mime.types; default_type application/octet-stream; log_format main '$http_h ...

  7. nginx 常见正则匹配符号表示

    1.^: 匹配字符串的开始位置: 2. $:匹配字符串的结束位置: 3..*: .匹配任意字符,*匹配数量0到正无穷: 4.\. 斜杠用来转义,\.匹配 . 特殊使用方法,记住记性了: 5.(值1|值 ...

  8. Nginx location 正则篇

    location 前缀 没有前缀               匹配以指定模式开头的location =                          精准匹配,不是以指定模式开头 ~       ...

  9. nginx的正则

    ~      为区分大小写的匹配. ~*     不区分大小写的匹配(匹配firefox的正则同时匹配FireFox). !~     不匹配的 !~*    不匹配的 .     匹配除换行符以外的 ...

随机推荐

  1. uestc1633

    uestc1633 题意 给你一个大小为 \(n\) 的集合 \(S\) ,集合里有 \(n\) 个互不相同正整数,有 \(q\) 个询问,每次询问是否能选择 \(S\) 中的一些数字 ( 同一个数字 ...

  2. Codeforces Round #283 (Div. 2) D. Tennis Game(模拟)

    D. Tennis Game time limit per test 2 seconds memory limit per test 256 megabytes input standard inpu ...

  3. Java加密解密大全

    ChinaSEI系列讲义(By 郭克华)   Java加密解密方法大全                     如果有文字等小错,请多包涵.在不盈利的情况下,欢迎免费传播. 版权所有.郭克华 本讲义经 ...

  4. 【块状树】【树链剖分】【线段树】bzoj3531 [Sdoi2014]旅行

    离线后以宗教为第一关键字,操作时间为第二关键字排序. <法一>块状树,线下ac,线上tle…… #include<cstdio> #include<cmath> # ...

  5. Java堆内存不足

    1)使用IDEA开发程序时有时候会提示“Java Heap space error”,说明IDEA默认配置的Java堆内存不足,程序需要更多的堆内存. 2)堆(Heap)和非堆(Non-heap)内存 ...

  6. 焦点改变事件OnFocusChangeListener

    效果图 1.MainActivity.java package com.example.app2; import android.support.v7.app.AppCompatActivity; i ...

  7. 微信开发之消息接收与回复--weixin-java-tools

    一.前言 在上一篇文章<微信开发之如何使用开发工具--weixin-java-tools>中我给各位介绍了weixin-java-tools,并且介绍了如何使用weixin-java-to ...

  8. Sublime text JsFormat插件的安装

    javascript格式化插件JsFormat 1.下载这插件包 https://github.com/jdc0589/JsFormat 2.点击菜单:Preferences->Browse P ...

  9. dot language 学习笔记

    dot language 学习笔记 UP | HOME   dot language 学习笔记 Table of Contents 1 dot 语言简介 2 基本语法 2.1 常用图形 2.2 常用线 ...

  10. scrapy安装使用教程

    1. 安装Python,我用的是Python2.7.11,你喜欢用什么版本,你开心就好,只是后面的软件有些可能需要配套. 2. 安装pip,下载pip-8.1.2.tar.gz (md5, pgp). ...