Mengalihkan URL di nginx

Mengalihkan URL di nginx

Nginx adalah pelayan web sumber terbuka yang kuat yang boleh digunakan untuk pelbagai tujuan, termasuk pengalihan URL. Pengalihan URL adalah proses penghantaran satu URL ke yang lain. Ini adalah amalan biasa untuk mengalihkan URL apabila anda menukar struktur URL laman web anda atau semasa anda memindahkan kandungan dari satu halaman ke halaman yang lain.

Dalam artikel ini, kami akan membincangkan pengalihan semula URL di nginx dan memberikan beberapa contoh untuk membantu anda memahami bagaimana ia berfungsi.

Jenis Pengalihan URL

Terdapat dua jenis pengalihan URL:

  • 301 Redirect: 301 Redirect adalah pengalihan tetap yang memberitahu enjin carian dan penyemak imbas bahawa URL telah berpindah secara kekal ke lokasi baru. Ia biasanya digunakan apabila anda menukar struktur URL laman web anda atau semasa anda memindahkan kandungan dari satu halaman ke halaman lain.
  • 302 Redirect: 302 Redirect adalah pengalihan sementara yang memberitahu enjin carian dan penyemak imbas bahawa URL telah bergerak sementara ke lokasi baru. Ia biasanya digunakan apabila anda perlu mengalihkan trafik sementara ke halaman yang berbeza.

Mengalihkan http ke https

Salah satu kegunaan pengalihan URL yang paling biasa di Nginx ialah mengarahkan trafik HTTP ke HTTPS. HTTPS adalah versi selamat protokol HTTP yang menyulitkan data antara pelayan dan penyemak imbas. Untuk mengalihkan trafik HTTP ke HTTPS, tambahkan kod berikut ke fail konfigurasi nginx anda:

pelayan mendengar 80; Contoh Server_name.com; Kembali 301 https: // Contoh.com $ request_uri;
12345pelayan mendengar 80; Contoh Server_name.com; Kembali 301 https: // Contoh.com $ request_uri;

Kod ini mendengarkan port 80 dan mengalihkan semua lalu lintas HTTP ke HTTPS dengan mengembalikan kod status 301.

Mengalihkan bukan www ke url www

Jika anda ingin mengalihkan URL bukan WWW ke rakan WWW mereka, tambahkan kod berikut ke fail konfigurasi Nginx anda:

pelayan mendengar 80; Contoh Server_name.com; Kembali 301 $ skim: // www.Contoh.com $ request_uri;
12345pelayan mendengar 80; Contoh Server_name.com; Kembali 301 $ skim: // www.Contoh.com $ request_uri;

Kod ini mendengarkan port 80 dan mengalihkan semua URL bukan WWW ke rakan WWW mereka dengan mengembalikan kod status 301.

Mengalihkan www ke URL bukan www

Jika anda ingin mengalihkan URL WWW ke rakan-rakan bukan WWW mereka, tambahkan kod berikut ke fail konfigurasi Nginx anda:

pelayan mendengar 80; server_name www.Contoh.com; Kembali 301 $ Skim: // Contohnya.com $ request_uri;
12345pelayan mendengar 80; server_name www.Contoh.com; Kembali 301 $ Skim: // Contohnya.com $ request_uri;

Kod ini mendengarkan port 80 dan mengalihkan semua URL WWW ke rakan niaga bukan WWW mereka dengan mengembalikan kod status 301.

Mengalihkan url tertentu ke URL lain

Jika anda ingin mengalihkan URL tertentu ke URL lain, tambahkan kod berikut ke fail konfigurasi nginx anda:

lokasi/url url return 301 https: // contoh.com/new-url;
123lokasi/url url return 301 https: // contoh.com/new-url;

Kod ini mengalihkan semua lalu lintas dari/url lama ke https: // contoh.com/new-url.

Halaman ralat tersuai 404 dan mengalihkan

Untuk membuat halaman ralat 404 tersuai dan redirect, tambahkan kod berikut ke fail konfigurasi nginx anda:

error_page 404 /404.html; Lokasi = /404.html dalaman;
1234error_page 404 /404.html; lokasi = /404.html dalaman;

Kod ini mengalihkan semua 404 kesilapan ke adat 404.Halaman HTML.

Kesimpulan

Pengalihan URL adalah alat yang berkuasa yang boleh digunakan untuk mengalihkan trafik dari satu URL ke yang lain. Dalam artikel ini, kami membincangkan dua jenis pengalihan URL dan memberikan beberapa contoh untuk membantu anda memahami bagaimana ia berfungsi di nginx. Dengan memahami pengalihan URL, anda boleh membuat pengalaman pengguna yang lebih baik untuk pelawat anda dan meningkatkan prestasi keseluruhan laman web anda.