"="字首指令匹配,如果匹配成功,則停止其他匹配
普通字串指令匹配,順序是從長到短,匹配成功的location如果使用^~,則停止其他匹配(正則匹配)
正規表示式指令匹配,按照配置檔案裡的順序,成功就停止其他匹配
如果第三步中有匹配成功,則使用該結果,否則使用第二步結果
匹配的順序是先匹配普通字串,然後再匹配正規表示式。另外普通字串匹配順序是根據配置中字元長度從長到短,也就是說使用普通字串配置的location順序是無關緊要的,反正最後nginx會根據配置的長短來進行匹配,但是需要注意的是正規表示式按照配置檔案裡的順序測試。找到第乙個比配的正規表示式將停止搜尋。
一般情況下,匹配成功了普通字串location後還會進行正規表示式location匹配。有兩種方法改變這種行為,其一就是使用「=」字首,這時執行的是嚴格匹配,並且匹配成功後立即停止其他匹配,同時處理這個請求;另外一種就是使用「^~」字首,如果把這個字首用於乙個常規字串那麼告訴nginx 如果路徑匹配那麼不測試正規表示式。
location = /uri =開頭表示精確匹配,只有完全匹配上才能生效。
location ^~ /uri ^~ 開頭對url路徑進行字首匹配,並且在正則之前。
location ~ pattern ~開頭表示區分大小寫的正則匹配。
location ~* pattern ~*開頭表示不區分大小寫的正則匹配。
location /uri 不帶任何修飾符,也表示字首匹配,但是在正則匹配之後。
location / 通用匹配,任何未匹配到其它location的請求都會匹配到,相當於switch中的default。
增加自己總結:
location ^~/web/
proxy_pass 這個引數,如果增加了uri ,那麼/web/就會被替換掉,但是如果配置的是 proxy_pass http://localhost:8081,那麼/web/就不會被替換掉
nginx 配置總結
1 首先配置tomcat的jvmroute 2 在proxy.conf中配置 上傳檔案最大值,作用於header client max body size 100m 根據瀏覽器不同此值可能關係到檔案的上傳,待驗證 client body buffer size 256k proxy connect ...
Nginx 配置總結
location 預設沒匹配到時,會匹配這個 location test proxy pass 匹配到 test pa時,將 test pa傳給127.0.0.1 8088,即 test pa全部傳給8088這個埠的應用 location test pa proxy pass 匹配到 test pa...
nginx配置location總結
上 多的不說了,配了很多,終於起效了。對nginx 來說,實現的方法很簡單,只要在location段中,使用 expires 就可以了 格式expires 30s 表示把資料快取30秒 expires 30m 表示把資料快取30分 expires 10h 表示把資料快取10小時 expires 1d...