1. 程式人生 > >Nignx入門location、root配置

Nignx入門location、root配置

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配置