Nignx入門location、root配置
阿新 • • 發佈:2017-06-20
itl oot tar ati req 重要 鏈接 優先級 小寫 nginx的配置.首當其沖的就是location配置了,下面是筆記參考的博文鏈接點這裏
location匹配的是nginx的哪個變量?
$request_uri (這個不懂怎麽用)
location的匹配種類有哪些?
格式 location [ 空格 | = | ~ | ~* | !~ | !~* ] /uri/ {} # 精確匹配: 相等(=) # 字符串匹配: 字符串匹配(空格) 匹配開頭(^~) # 正則匹配: 區分大小寫匹配(~) 不區分大小寫匹配(~*) 區分大小寫不匹配(!~) 不區分大小寫不匹配(!~*)
location搜索優先級優先級如何?(這個是重點)
精確匹配 >
字符串匹配( 長 > 短 [ 註: ^~ 匹配則停止匹配 ]) >
正則匹配( 上 > 下 ) # 精確匹配只能命中一個 # 字符串匹配使用匹配最長的最為匹配結果 # 正則匹配按照location定義的順序進行匹配,先定義具有高優先級
特別註意 (這裏要看清楚): 字符串匹配優先搜索,但是只是記錄下最長的匹配 ( 如果 ^~ 是最長的匹配,則會直接命中,停止搜索正則 ),然後繼續搜索正則匹配,如果有正則匹配,則命中正則匹配,如果沒有正則匹配,則命中最長的字符串匹配.
具體詳細的案例博文上有,在這裏我就不copy下來了
nginx的location root 指令
下午被root指令的問題搞殘了,百度了下才知道原委
這是參考博文的鏈接點這裏
location /img/ { alias /var/www/image/; } #若按照上述配置的話,則訪問/img/目錄裏面的文件時,ningx會自動去/var/www/image/目錄找文件
location /img/ { root /var/www/image; } #若按照這種配置的話,則訪問/img/目錄下的文件時,nginx會去/var/www/image/img/ 目錄下找文件。]
註:alias與root最主要的差別就在於多了黃色背景塊
alias是一個目錄別名的定義,root則是最上層目錄的定義。
還有一個重要的區別是alias後面必須要用“/”結束,否則會找不到文件的。。。而root則可有可無~~
Nignx入門location、root配置