zoukankan      html  css  js  c++  java
  • nginx server_name匹配顺序

    server_name可为IP/domain/localhost/null等任何字符串(字符串server_name也可以用来匹配),注意各个 server 块的顺序。

    1.如果只有一个server,server_name可以任意起(可以为IP/域名/任何字符串),则不论用什么访问(IP/域名/字符串),不论server_name是否匹配,都匹配到此server;

    2.有多个server,如果server_name可以匹配到任何一个server的server_name,则使用此server,否则匹配到第一个server块,不论server_name是否匹配

    1、准确的server_name匹配,例如:

    server {
         listen       80;
         server_name  domain.com  www.domain.com;
         ...
    }

    2、以*通配符开始的字符串:

    server {
         listen       80;
         server_name  *.domain.com;
    ... }

    3、以*通配符结束的字符串:

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

    4、匹配正则表达式:

    server {
         listen       80;
         server_name  ~^(?.+).domain.com$;
    ... }
    nginx将按照1,2,3,4的顺序对server name进行匹配,只有有一项匹配以后就会停止搜索,所以我们在使用这个指令的时候一定要分清楚它的匹配顺序(类似于location指令)。
  • 相关阅读:
    windows下python开发环境搭建
    看看两年前的我
    网络函数[00]函数总述
    网络函数[04]connect解析
    网络函数[08]网络读取函数解析
    网络函数[01]套接口地址图解
    网络函数[13]
    网络函数[07]accept解析
    网络函数[10]shutdown解析
    网络函数[14]
  • 原文地址:https://www.cnblogs.com/zlingh/p/7910156.html
Copyright © 2011-2022 走看看