Saya mencoba memahami nginx sedikit lebih baik dan mencoba membentuk regex di mana setiap url yang TIDAK cocok /api/postdataV1
dirutekan ke sekelompok server yang berbeda. Saya terus melihat dua hal ini dalam contoh tanpa penjelasan
location ~ {some regex}
location ~* (some regex}
Pertanyaan pertama saya adalah apa ini ~
dan ~*
(saya pikir yang ~
benar berarti saya menentukan regex?) Tetapi bagaimana dengan ~*
itu?
Apa yang saya pikirkan adalah apa yang saya inginkan. Apakah ini benar?
location ~ ^/api/postdataV1$ {
#matches to this route to where I want
}
location / {
#This will be everything except /api/postdataV1 I think
}
Apakah ini benar? tapi bagaimana dengan ~*
... saya tidak mendapatkannya
terima kasih, Dean
nginx location
, hit pertama adalah ini :) tetapi saya harus mengakui, orang harus terbiasa dengan dokumentasi nginx, esp. menemukan hal yang benar di bawah bagian modul.Jawaban:
Seperti yang dinyatakan dalam dokumentasi nginx ,
~*
regex untuk pencocokan case-sensitive dan~
untuk case-sensitive.Sintaks Anda baik-baik saja, tetapi dapat ditulis ulang tanpa regex (lokasi terpendek berlangsung terakhir dalam pencocokan permintaan):
sumber
/api/PostData
tidak akan cocok tanpa~*