Bagaimana Cara Redirect URL menggunakan NGINX? (Permanen sementara)

Diterbitkan: 2024-01-26

Daftar isi
Apa itu pengalihan?
Apa perlunya Pengalihan Nginx?
Metode Pengalihan Nginx Umum (Sementara dan Permanen)
Cara mengarahkan ulang URL menggunakan Nginx (Sementara dan permanen)
Periksa Sintaks Nginx
Mulai ulang Server Nginx
Ringkasan
Pertanyaan yang Sering Diajukan

Apa itu pengalihan?

Mengenai Nginx, redirection adalah fungsi server web yang memindahkan lalu lintas situs web dari satu URL ke URL lainnya. Ini adalah salah satu fitur paling berguna yang dengannya Anda dapat dengan mudah mengarahkan pengunjung ke lokasi lain secara otomatis.

Meskipun ada banyak jenis pengalihan yang dapat Anda lakukan, dua yang paling penting dan umum digunakan adalah pengalihan permanen (301) dan pengalihan sementara (302).

Dalam postingan ini, kami akan menunjukkan kepada Anda metode pengalihan dengan contoh seperti, dari www ke non-www, pengalihan Nginx ke Domain, pengalihan Nginx dari HTTP ke HTTPS, dll.


Baca: Bagaimana cara kerja URL Pengalihan WordPress? 5 Metode Terbaik


Apa perlunya Pengalihan Nginx?

  • Nginx menyediakan salah satu fitur krusial yaitu mengalihkan URL website ke alamat lain berdasarkan kriteria.
  • Pengalihan Nginx sangat ramah pengguna dan mudah dikonfigurasi, sehingga sangat fleksibel untuk mengelola URL situs web.
  • Ini sangat berguna dalam menjaga peringkat SEO suatu halaman terutama jika Anda bermigrasi dari satu CMS ke CMS lainnya.
  • Fitur pengalihan juga membantu mempertahankan posisi SERP meskipun ada perubahan pada struktur URL.

Metode Pengalihan Nginx Umum (Sementara dan Permanen)

Seperti yang telah kami sebutkan, ada beberapa jenis metode pengalihan yang tersedia, namun dalam praktiknya, hanya ada dua yang umum digunakan, yaitu pengalihan Sementara dan Permanen.

Pengalihan Sementara (Kode Respons: 302 Ditemukan)

  • Dari namanya sendiri, Anda sudah bisa menebak apa gunanya pengobatan sementara. Nah, cara ini bertujuan untuk mengubah sementara lokasi halaman dari satu tempat ke tempat lain.
  • Kode Respons: 302 Ditemukan digunakan untuk menunjukkan penerusan sementara halaman selama pengalihan ini.
  • Ini sebagian besar digunakan selama pemeliharaan situs web; pengalihan sementara memberi tahu lalu lintas atau pengguna tentang tidak tersedianya situs web untuk sementara.
  • Ini juga dapat digunakan untuk mengarahkan halaman yang tidak lengkap ke titik atau halaman beranda lain.
  • Contoh skenario: Pengunjung menavigasi ke Halaman Situs Web, namun karena pemeliharaan, mereka diarahkan ke pemberitahuan yang menunjukkan bahwa situs web sedang dalam pemeliharaan.
Temporary Redirection
Pengalihan Sementara (Kode Respons: 302 Ditemukan)

Pengalihan Permanen (Kode Respons: 301 Ditemukan)

  • Pengalihan Nginx Permanen digunakan untuk merelokasi domain halaman secara permanen.
  • Pengalihan 301 digunakan untuk menunjukkan pergerakan permanen halaman dalam konteks ini.
  • Pengalihan ini terutama digunakan ketika pengguna ingin mengubah nama domain dan tidak lagi ingin lalu lintas situs web mengakses lokasi lama.
Permanent Redirection
Pengalihan Permanen (Kode Respons: 301 Ditemukan)

Cara mengarahkan ulang URL menggunakan Nginx (Sementara dan permanen)

Sebelum kita mulai, pertama-tama Anda perlu memastikan bahwa NGINX telah diinstal di VPS atau Virtual Private Server Anda. Setelah itu akses VPS Anda melalui SSH. Di Wpoven Anda dapat dengan mudah mengakses situs Anda melalui konsol baris perintah SSH.


Baca: Bisakah saya mengakses Situs WPOven saya melalui SSH


Pengaturan Konfigurasi NGINX

  • Lokasi File Konfigurasi NGINX: Konfigurasi untuk NGINX biasanya disimpan dalam file .conf, yang merupakan file teks biasa yang berisi arahan dan pengaturan untuk server.
  • Lokasi Default: Lokasi default untuk file konfigurasi NGINX sering kali berada di dalam direktori root dokumen situs Anda. Dalam hal ini, ia menyebutkan jalurnya: /etc/nginx/sites-available/directory_name.conf .
  • Direktori Root Dokumen: Direktori ini adalah tempat penyimpanan file situs web Anda. Akar dokumen dapat bervariasi; untuk server satu situs, mungkin berada di direktori /html . Jika server Anda menghosting beberapa situs, akar dokumen mungkin berada dalam direktori domain tertentu seperti /domain.com .
  • Penamaan File Konfigurasi: Nama file .conf Anda sesuai dengan situs Anda. Misalnya, jika situs Anda berada di direktori /html , file .conf mungkin diberi nama html.conf . Jika berada di direktori seperti /domain.com , maka file .conf dapat diberi nama domain.com.conf .
  • File Konfigurasi Default: Di dalam /etc/nginx/sites-available/directory , biasanya terdapat file default yang dapat Anda gunakan sebagai templat. File ini mungkin berisi konfigurasi dasar yang dapat Anda salin atau modifikasi sesuai kebutuhan Anda.
  • Membuat File Konfigurasi Baru: Alternatifnya, Anda memiliki opsi untuk membuat file .conf baru. Misalnya, Anda dapat membuat file bernama html.conf atau domain.com.conf berdasarkan struktur situs Anda dan konvensi penamaan.

Anda mungkin terkejut mengetahui bahwa, di Nginx, tersedia alat bawaan yang disebut arahan “rewrite”. Ini adalah alat yang sangat berguna yang memudahkan pengalihan. Bagian terbaiknya adalah tidak ada hal khusus yang perlu Anda lakukan, ini secara otomatis hadir setiap kali Anda menginstal Nginx baru.

Perintah “rewrite” ini tidak hanya dimaksudkan untuk melakukan pengalihan dasar, namun cukup serbaguna. yaitu Anda akan dapat membuat dua jenis pengalihan, permanen dan sementara.

Yang harus Anda lakukan hanyalah memberikan dua argumen saja, URL lama dan URL Baru. Di bawah ini adalah beberapa contoh untuk referensi Anda. Cukup masukkan baris berikut di konfigurasi server Anda.

Pertama, buka file konfigurasi dengan memasukkan perintah berikut di terminal.

$ sudo vi /etc/nginx/nginx.conf

setelah itu gunakan perintah berikut yang diberikan di bawah ini sesuai kebutuhan Anda.

1. Pengalihan Nginx Halaman ke Halaman

Pengalihan Halaman Sementara ke halaman Nginx

server {
# Temporary redirect to an individual page
rewrite ^/oldpage$ http://www.example.com/newpage redirect;
}

Pengalihan Halaman Permanen ke Halaman Nginx

server {
# Permanent redirect to an individual page
rewrite ^/oldpage$ http://www.example.com/newpage permanent;
}

Dari perintah di atas, Anda telah memperhatikan bahwa jika Anda ingin membuat pengalihan permanen, yang perlu Anda lakukan hanyalah mengganti “redirect” dengan “permanent” di akhir arahan.

2. Pengalihan Nginx WWW ke non-www

Permanen www ke pengalihan non-www:

server {
# Permanent redirect to non-www
server_name www.example.com;
rewrite ^/(.*)$ http://example.com/$1 permanent;
}


Catatan : Jika Anda ingin mengalihkan dari non-www ke www, Anda hanya perlu mengganti URL situs web yang disebutkan dalam perintah di atas. yaitu Ganti www.example.com dengan example.com dan sebaliknya.


3. Bagaimana cara mengalihkan URL dari HTTP ke HTTPS di Nginx?

Sebelum melakukan pengalihan ini, jangan lupa memasang sertifikat SSL. Mengalihkan ke HTTPS memiliki manfaatnya. Ini membantu melindungi situs web Anda dari semua serangan MIMT, pencurian data, dll. Bahkan portnya pun berbeda, misalnya HTTP menggunakan Port 80 sedangkan HTTPS menggunakan 443.

Jadi untuk melindungi semua informasi sensitif yang dibagikan antara Anda dan pengunjung Anda, Anda memerlukan perintah berikut:

server {
listen 80;
server_name www.domain.tld;
return 301 https://www.domain.tld$request_uri;
}

4. Nginx Redirect URL ke URL lain

Jika Anda ingin mengarahkan secara permanen yaitu nginx redirect ke URL lain 301 gunakan perintah berikut:

Ke domain baru dari domain lama,

server {
listen 80;
listen 443 ssl;
server_name olddomain.com www.olddomain.com;
return 301 $scheme://www.newdomain.com$request_uri;
}

ATAU

server {
# Permanent redirect to new URL
listen 443 ssl;
# Add this line to listen on the HTTPS port and enable SSL server_name olddomain.com;
ssl_certificate /path/to/your/ssl_certificate.crt; # Update with the actual path to your SSL certificate
ssl_certificate_key /path/to/your/ssl_certificate_key.key; # Update with the actual path to your SSL certificate key
# Additional SSL settings can be configured here
rewrite ^/(.*)$ https://newdomain.com/$1 permanent;
# Update to use 'https' protocol
}

  • Kami telah menyiapkan pengalihan untuk situs web kami menggunakan alat yang disebut arahan “tulis ulang” di Nginx.
  • ^/(.*)$ adalah ekspresi reguler yang akan menggunakan semuanya setelah garis miring terakhir ( / ) di URL.
  • Misalnya, jika seseorang mencoba mengakses http://olddomain.com/index.html , ia akan menggunakan bagian index.html .
  • Jadi, jika Anda membuka http://olddomain.com/index.html , Anda akan diarahkan dengan lancar ke http://newdomain.com/index.html .
  • Idenya adalah untuk mengarahkan pengguna ke konten yang sama di domain baru dengan lancar.
  • Untuk memastikan pengalihan ini bersifat permanen, kami telah menambahkan kata kunci khusus, “Permanen” Setelah arahan rewrite .
  • Ini memberi tahu browser dan mesin telusur bahwa ini adalah perubahan permanen, menggunakan apa yang disebut kode status HTTP 301.

5. Nginx mengalihkan ke domain lain tanpa mengubah URL

Misalkan Anda ingin mengalihkan domain olddomain.com ke newdomain.com tanpa mengubah URL. Artinya ketika Anda memasukkan domain lama.com, seharusnya dialihkan ke domain baru.com, tetapi URL-nya tetap menampilkan domain lama.com.

Inilah cara Anda melakukan pendekatan,

server {
listen 80;
server_name olddomain.com;

location / {
proxy_pass http://newdomain.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
}
}

6. Pengalihan Nginx Situs Tertentu

server {
listen 80;
server_name example.com;
return 301 http://newexample.com$request_uri;
}


Periksa Sintaks Nginx

Untuk memeriksa semua Sintaks nginx sudah benar, gunakan perintah berikut:

nginx -t

Jika outputnya ternyata kosong, berarti sintaksnya sudah benar dan Anda perlu me-restart Server Nginx agar modifikasi ini efektif.


Mulai ulang Server Nginx

Jangan lupa untuk me-restart server Nginx Anda agar aturan ini efektif dengan menggunakan perintah:

sudo systemctl restart Nginx


Ringkasan

Seperti disebutkan di atas, Nginx ternyata merupakan server web paling kuat dan ramah pengguna yang memungkinkan Anda melakukan pengalihan Nginx permanen dan sementara dengan mudah.

Setelah membaca blog ini, sekarang Anda tahu Cara membuat Redirect URL menggunakan NGINX. Apakah untuk nginx redirect dari HTTP ke HTTPS, dari satu domain ke domain lain, dll.

Selain itu, Anda telah mempelajari bagaimana pengalihan memengaruhi peringkat SEO Anda, jadi selalu pastikan Anda menggunakan jenis pengalihan yang benar.

Dengan fitur bermanfaat ini, Anda dapat dengan mudah mengubah struktur situs web Anda sesuai tren dan persyaratan dan menahan diri dari rasa takut akan kehilangan lalu lintas dan peringkat SERP.

WPOven menawarkan opsi hosting yang dikelola WordPress untuk proyek NGINX Anda berikutnya. Hubungi kami untuk mendiskusikan opsi terbaik untuk Anda.

Jika Anda memiliki pertanyaan atau saran, silakan beri tahu kami di bagian komentar di bawah:


Pertanyaan yang Sering Diajukan

Bagaimana cara mengarahkan ulang URL di nginx?

Di Nginx, tersedia alat bawaan yang disebut arahan “rewrite”. Ini adalah alat yang sangat berguna yang memudahkan pengalihan. Bagian terbaiknya adalah tidak ada hal khusus yang perlu Anda lakukan, ini secara otomatis hadir setiap kali Anda menginstal Nginx baru.

Apa kode pengalihan untuk Nginx?

Nginx cukup serbaguna dan menawarkan dua jenis pengalihan, permanen dengan kode respons 301, dan kode respons pengurangan sementara adalah 302.

Untuk apa NGINX digunakan?

Nginx adalah server web serbaguna dan berkinerja tinggi serta server proxy terbalik. Ini biasanya digunakan untuk tujuan berikut: Server Web , Server Proxy Terbalik , Penyeimbang Beban , Penghentian SSL/TLS , Caching , Jaringan Pengiriman Konten (CDN) , API Gateway , Dukungan WebSocket , Keamanan, dan Arsitektur Ketersediaan Tinggi