Terdapat tiga lompatan 301 biasa di bawah Nginx, walaupun semuanya boleh mencapai tujuan yang sama. Walau bagaimanapun, masih terdapat perbezaan dalam ketiga-tiga kaedah penulisan Perbezaan utama adalah dalam prestasi padanan biasa.
Kaedah pertama: Gunakan arahan tulis semula untuk memadankan semua URI melalui ungkapan biasa dan kemudian alih keluar yang pertama / (segaris ke belakang) pada permulaan.
tulis semula ^/(.*)$ https://www.hi-linux.com/$1;
Jenis kedua: Gunakan juga arahan tulis semula, tetapi perbezaannya ialah semua URI dipadankan melalui pembolehubah $request_uri.
tulis semula ^ https://www.hi-linux.com$request_uri kekal;
Kelebihan menulis dengan cara ini ialah ia menjimatkan proses mengeluarkan garis serong terbalik pertama pada permulaan, dan prestasi padanan biasa adalah lebih baik.
Kaedah ketiga: Gunakan arahan return untuk memberitahu Nginx secara langsung bahawa ini adalah ubah hala 301 dan ambil URI yang ditentukan melalui kod status 301 dan parameter $request_uri.
kembali 301 https://www.hi-linux.com$request_uri;
Kaedah ini adalah yang terbaik dari segi prestasi, kerana arahan tulis semula mempunyai banyak kaedah dan peraturan penulisan Hanya selepas semua perlawanan biasa dilaksanakan, Nginx akan mengetahui bahawa ini adalah ubah hala kekal.
Melalui pengenalan tiga kaedah penulisan di atas, kita dapat melihat bahawa arahan pulangan mempunyai lebih banyak kelebihan dalam prestasi berbanding arahan tulis semula dalam 301 lompatan. Walaupun perbezaan prestasi antara beberapa kaedah penulisan tidak besar apabila bilangan lawatan tidak besar, pengoptimuman kecil juga boleh memainkan peranan besar dalam meningkatkan prestasi sistem perniagaan apabila terdapat bilangan lawatan yang banyak!
Atas ialah kandungan terperinci Perbezaan dalam cara Nginx melaksanakan kaedah ubah hala 301. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!