cari

Rumah  >  Soal Jawab  >  teks badan

Peraturan menulis semula nginx yang keliru

Gambar di atas adalah contoh mudah yang saya konfigurasikan berdasarkan prinsip padanan terpanjang nginx Tujuannya adalah untuk menafikan semua akses kepada /, tetapi untuk dapat melompat secara normal apabila mengakses /hello, ia masih kembali 403, tetapi ia ditulis semula rekod yang nginx memang sepadan dengan peraturan saya. Mengapa ia masih mengembalikan 403 kepada saya?

習慣沉默習慣沉默2738 hari yang lalu871

membalas semua(2)saya akan balas

  • 怪我咯

    怪我咯2017-05-27 17:47:03

    lokasi / boleh sepadan dengan semua permintaan

    Anda boleh mengubah suainya seperti berikut

     location = / {
        deny all;
     }

    Peraturan tatabahasa: lokasi [=|~|~*|^~] /uri/ { … }
    = Permulaan bermaksud padanan yang tepat
    ^~ Permulaan bermaksud uri bermula dengan rentetan biasa, yang boleh difahami sebagai padanan laluan url. nginx tidak mengekod URL, jadi permintaannya adalah /static/20%/aa, yang boleh dipadankan dengan peraturan ^~ /static/ /aa (perhatikan ruang). Permulaan
    ~ menunjukkan padanan biasa sensitif huruf besar dan kecil
    ~* Permulaan menunjukkan padanan biasa tidak peka huruf besar dan kecil
    !~ dan !~* masing-masing adalah padanan biasa tidak sensitif huruf besar dan tidak sensitif huruf besar tidak sepadan
    / padanan universal , Sebarang permintaan akan dipadankan

    balas
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-27 17:47:03

    Kerana /test00 selepas menulis semula padanan lokasi /

    Anda harus menambah lokasi ~ ^/test00 dan dayakan akses

    balas
    0
  • Batalbalas