Rumah > Soal Jawab > teks badan
Sebagai contoh, url yang diminta ialah
photos/100000_0_9-.jpg
Saya nak kira nombor 100000 dan bahagikan
location ~ /photos/([0-9]+)_0_([0-9]+)-.jpg$ { root '/home/images'; set $id /10000; set $version ; rewrite /photos/([0-9]+)_0_([0-9]+)-.jpg$ /$id/$version/_0_-.jpg; }
Kemudian tulis semula ke direktori yang sepadan dengan id, tetapi jika anda melakukan ini, nilai id akan menjadi 100000/10000 bukannya 10.
Bagaimana untuk melaksanakan operasi pembahagian ini dalam nginx?
伊谢尔伦2017-05-16 17:32:00
Fail konfigurasi Nginx nampaknya tidak menyokong operasi sains data Anda boleh menggunakan HttpLuaModule yang ditulis oleh agentzh.
location ~ /photos/([0-9]+)_0_([0-9]+)-.jpg$ { root '/home/images'; set $id ; set $version ; set_by_lua $id "return math.floor(tonumber(ngx.arg[1])/10000)" $id; rewrite /photos/([0-9]+)_0_([0-9]+)-.jpg$ /$id/$version/_0_-.jpg; }
Anda juga boleh menulis sambungan operasi matematik mudah dalam bait https://github.com/arut/nginx-let-mod....