2.Nginx學習-The HTTP Core module

http core module是Ngnix提供WEB服務的最核心模塊,默認被開啓。本篇文章將講述該模塊的一些配置

配置文件結構:

http {
    server {// virtual website
        location{
        }
    }
    server{
      location{
      }
    }
}

Location modifer 匹配規則

匹配優先級與順序: --> No modifer --> ^~ modifier --> ~ or ~* modifier  --> no modifier


  • = 字符串精準匹配,不支持正則

server {
    server_name website.com;
    location = /abcd {
            […]
    }
}

http://website.com/abcd (exact match 精確匹配)

http://website.com/ABCD (如果OS忽略大小寫,則可以匹配)

http://website.com/abcd?param1&param2(匹配,忽略query參數)

http://website.com/abcd/ (不匹配,多了一個slash斜槓)

http://website.com/abcde (不匹配)


  • No modifer :begin with the specifed pattern. You may not use regular expressions

server {
    server_name website.com;
    location  /abcd {
            […]
    }
}
 

http://website.com/abcd (exact match 精確匹配) 

http://website.com/ABCD (如果OS忽略大小寫,則可以匹配)

http://website.com/abcd?param1&param2(匹配,忽略query參數)

http://website.com/abcd/ (匹配)

http://website.com/abcde (匹配)


  • The ~ modifer :case-sensitive 匹配正則

server {
    server_name website.com;
    location ~ ^/abcd$  {
            […]
    }
}
 

http://website.com/abcd (exact match 精確匹配) 

http://website.com/ABCD (不匹配)

http://website.com/abcd?param1&param2(匹配,忽略query參數)

http://website.com/abcd/ (不匹配,多了一個斜槓)

http://website.com/abcde (不匹配)

  • The ~* modifer :case-insensitive 匹配正則

server {
    server_name website.com;
    location ~* ^/abcd$  {
            […]
    }
}
 


http://website.com/abcd (exact match 精確匹配) 

http://website.com/ABCD (匹配)

http://website.com/abcd?param1&param2(匹配,忽略query參數)

http://website.com/abcd/ (不匹配,多了一個斜槓)

http://website.com/abcde (不匹配)

  • The ^~ modifer:if the pattern is matched, Nginx stops searching for other patterns

  • The @ modifer : 定義內部location塊,可以通過內部跳轉訪問





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章