idwebhost Bikin Website Sekarang

Apa Itu mod_rewrite: Arti, Cara Kerja, Contoh Penggunaannya

24 Okt 2024
Apa Itu mod_rewrite: Arti, Cara Kerja, Contoh Penggunaannya campaign-unlimited

Apa itu mod_rewrite? Mungkin istilah ini terdengar asing di telinga kamu. Namun, jika kamu adalah seorang web developer, yang terlintas di benakmu sebuah alamat website yang keren dan mudah diingat. 

Ya. mod_rewrite seperti sebuah fitur yang membuat URL website lebih user-friendly dan SEO-friendly. Dengan mod_rewrite, kita bisa mengubah URL yang panjang dan berantakan menjadi URL yang pendek, jelas, dan mudah diingat. 

Penasaran apa itu mod_rewrite, cara kerja mod_rewrite dan contoh penggunannya untuk meningkatkan performa SEO website kamu, yuk cari tahu semua jawabannya di artikel ini. 

Apa Itu mod_rewrite

mod_rewrite adalah modul keren di server web Apache yang memungkinkan kita “menulis ulang” atau mengalihkan permintaan URL ke konten tertentu. 

Gampangnya, modul ini mengubah permintaan dari browser menjadi jalur yang lebih enak dibaca di server, sehingga URL yang tadinya ribet dan panjang bisa diubah jadi lebih singkat dan ramah.

Misalnya, URL yang tadinya penuh dengan angka dan parameter seperti www.example.com/page.php?id=1234, bisa diubah jadi www.example.com/artikel-baru

Dengan menggunakan aturan yang disebut rewriterule, proses ini dijalankan dengan bantuan ekspresi reguler, yang memungkinkan kita untuk memodifikasi URL sesuai kebutuhan.

Kekuatan dari mod_rewrite adalah pada kemampuannya untuk membuat URL lebih intuitif dan ramah SEO. Selain membantu pengguna dan mesin pencari memahami website kamu, modul ini juga memudahkan dalam mengelola migrasi situs atau perubahan struktur konten, karena kamu bisa mengalihkan URL lama ke yang baru tanpa mengganggu pengalaman pengguna.

Apa Itu mod_rewrite

Cara Kerja mod_rewrite

Setelah kamu memahami definisi apa itu mod_rewrite, kini saatnya memahami bagaimana cara kerja modul Apache satu ini. Memahami cara kerja mod_rewrite dapat membantu kamu lebih mudah saat menggunakannya secara nyata pada website kamu.

#1 Proses Dasar mod_rewrite

Mod_rewrite bekerja hanya ketika ada permintaan (request) yang datang ke server. Modul ini akan memeriksa aturan yang sudah ditentukan dalam file konfigurasi, biasanya dalam file .htaccess atau dalam konfigurasi server utama (httpd.conf). 

Prosesnya meliputi langkah-langkah berikut:

  • Membaca File Konfigurasi: Ketika server menerima request, mod_rewrite akan membaca aturan dalam file .htaccess atau dalam file konfigurasi server. File ini berisi direktif yang mengarahkan server tentang bagaimana menangani URL tertentu.
  • Mencocokkan URL: Setiap aturan dalam mod_rewrite memiliki pola yang didefinisikan dengan menggunakan ekspresi reguler. Kemudian, mod_rewrite akan mencocokkan URL yang diminta dengan pola tersebut.
  • Menggunakan Rewrite Rules: Jika ada kecocokan, aturan yang relevan akan diterapkan. Ada dua operasi utama yang dilakukan: pengalihan (redirect) dan penulisan ulang (rewrite).

Contoh Penggunaan mod_rewrite

Berikut adalah beberapa contoh sederhana untuk menjelaskan cara kerja mod_rewrite:

#1 Membuat URL yang User-Friendly

Salah satu kegunaan paling populer dari mod_rewrite adalah mengubah URL yang panjang dan membingungkan jadi lebih pendek dan menarik. Misalnya, URL asli seperti www.contoh.com/display_article.php?articleId=artikel-saya, bisa kamu ubah menjadi www.contoh.com/articles/artikel-saya/. 

Dengan cara ini, pengunjung bisa lebih mudah mengingat dan membagikannya. Siapa sih yang tidak suka URL yang terlihat lebih keren?

#2 Menghentikan Hotlinking

Kamu pasti pernah mengalami gambar-gambar di website kamu diambil dan dipasang di website lain. Itulah yang dinamakan hotlinking. 

Nah, mod_rewrite bisa membantu kamu menghentikan tindakan tidak etis tersebut alias berfungsi sebagai hotlink protection

Kamu bisa mengatur aturan sehingga jika website lain mencoba mengambil gambar kamu, mereka akan melihat kode kesalahan “Banned”. Ini adalah cara yang bijak agar konten kamu tetap aman. 

#3 Pengalihan ke Canonical URL

Kadang-kadang, halaman web yang sama bisa diakses melalui beberapa URL. Misalnya, baik www.example.com/mypage.html maupun example.com/mypage.html bisa mengarah ke halaman yang sama. 

Dengan menggunakan mod_rewrite, kamu bisa mengalihkan pengunjung ke satu URL yang “benar”, misalnya www.example.com/mypage.html. Ini sangat penting untuk SEO karena membantu mesin pencari memahami URL mana yang harus mereka perhatikan.

#4 Menghindari Kesalahan 404

Ketika kamu menata ulang website dan memindahkan halaman, bisa jadi pengunjung masih mencoba mengakses URL lama. Alih-alih membiarkan mereka mendapatkan kesalahan 404 yang membingungkan, kamu bisa menggunakan mod_rewrite untuk mengalihkan URL lama, seperti www.example.com/myarticle.html, ke URL baru, www.example.com/articles/myarticle.html. Dengan cara ini, pengunjung tidak akan tersesat dan tetap bisa menemukan konten yang mereka cari.

Cara Menggunakan mod_rewrite

Jika kamu ingin memanfaatkan mod_rewrite untuk membuat URL yang lebih rapi dan SEO-friendly di website kamu, berikut langkah-langkah untuk mengaktifkan dan menggunakan modul ini:

Langkah 1: Memastikan mod_rewrite Diaktifkan

  • Jika kamu mengelola server sendiri, seperti menggunakan dedicated atau VPS server: Masuk ke terminal server, lalu jalankan perintah berikut untuk memeriksa apakah mod_rewrite aktif:

sudo apache2ctl -M | grep rewrite

Jika mod_rewrite aktif, kamu akan melihat hasil seperti “rewrite_module (shared)”. 

  • Jika tidak aktif, aktifkan dengan perintah ini:

sudo a2enmod rewrite

sudo systemctl restart apache2

Ini akan mengaktifkan modul dan me-restart server Apache untuk menerapkan perubahan.

  • Jika menggunakan layanan hosting: Kamu bisa menanyakan kepada penyedia hosting apakah modul mod_rewrite sudah diaktifkan atau mengaktifkannya melalui panel kontrol hosting seperti cPanel.

Langkah 2: Membuat file .htaccess

Setelah mod_rewrite aktif, langkah selanjutnya membuat atau mengedit file .htaccess. File ini berfungsi sebagai tempat untuk menulis aturan mod_rewrite.

File .htaccess adalah file konfigurasi Apache yang memungkinkan kamu membuat pengaturan khusus untuk direktori tempat file ini berada. Biasanya digunakan untuk mengelola pengalihan URL, mengamankan file, atau mengatur akses kontrol.

Berikut ini penjelasan tentang cara mengedit file .htaccess:

  • Untuk membuat atau mengedit file .htaccess, buka direktori utama website kamu (biasanya di folder public_html), lalu buat file baru bernama .htaccess jika belum ada.
  • Gunakan editor teks sederhana seperti Notepad atau editor kode seperti VS Code untuk membuka file .htaccess. Pastikan kamu dapat melihat file tersembunyi di server kamu, karena nama file ini dimulai dengan tanda titik (.) alias tersembunyi secara default. 

Langkah 3: Membuat Aturan mod_rewrite

Setelah file .htaccess siap, sekarang saatnya menulis aturan mod_rewrite. Nah, kamu juga perlu tahu aturan-aturan umum yang ditulis dalam mod_rewrite. Aturan-aturan ini ditulis dalam format tertentu, yaitu:

  • Aktifkan RewriteEngine: Sebelum aturan lain, aktifkan dengan perintah berikut ini.

RewriteEngine On

  • Pengalihan URL: Mengubah URL jelek jadi lebih bersih.

RewriteRule ^artikel/(.*)$ artikel.php?judul=$1 [L]

  • Redirect 301 (Permanen): Mengarahkan URL lama ke yang baru.

RewriteRule ^old-page.html$ /new-page.html [R=301,L]

  • Pengalihan ke HTTPS: Arahkan semua HTTP ke HTTPS.

RewriteCond %{HTTPS} off

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

  • Pengalihan URL Kanonik: Mengarahkan ke versi URL konsisten (dengan “www”).

RewriteCond %{HTTP_HOST} ^example\.com [NC]

RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

  • Cegah Hotlinking: Blokir situs lain yang menautkan gambar kamu 

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite.com [NC]

RewriteRule \.(jpg|jpeg|png|gif)$ - [F]

  • 404 Halaman Tidak Ditemukan: Arahkan ke halaman error khusus

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /404.php [L]

Apa Itu mod_rewrite

Langkah 4: Menguji Aturan

Setelah aturan ditulis, kamu harus mengujinya untuk memastikan semuanya berfungsi dengan baik.

Cara memeriksa apakah aturan bekerja dengan benar:

  • Uji langsung di browser: Buka browser dan masukkan URL yang seharusnya terpengaruh oleh aturan mod_rewrite yang kamu buat. Misalnya, jika kamu membuat aturan untuk mengubah example.com/artikel/judul-kamu menjadi example.com/artikel.php?judul=judul-kamu, masukkan URL yang sesuai dan lihat apakah pengalihan berfungsi dengan benar.
  • Cek log error Apache: Jika pengalihan tidak bekerja atau menghasilkan kesalahan, kamu bisa memeriksa file log error Apache untuk mengetahui masalahnya. Pada sistem berbasis Linux, log biasanya ada di:
    /var/log/apache2/error.log. Cari pesan terkait kesalahan mod_rewrite di file tersebut.
  • Gunakan alat online: Ada beberapa alat online yang bisa kamu gunakan untuk memeriksa dan menguji aturan mod_rewrite kamu . Alat ini akan membantu kamu memahami apakah pola penulisan ulang kamu sudah benar atau tidak.

Kesimpulan

Jadi apa itu mod_rewrite? Modul ini adalah alat yang sangat berguna di Apache untuk mengelola dan menulis ulang URL agar lebih ramah pengguna dan mesin pencari. Dengan mod_rewrite, kamu bisa mengubah URL yang panjang dan sulit diingat menjadi lebih pendek dan bersih, sekaligus menghindari masalah seperti kesalahan 404 saat menata ulang situs. 

Dalam jangka panjang, penggunaan mod_rewrite sangat membantu meningkatkan SEO dan memudahkan pengelolaan situs web, terutama saat kamu harus membuat pengalihan atau menata ulang struktur halaman.

Jadi, jangan ragu untuk menerapkan mod_rewrite dalam strategi SEO website kamu! Pertimbangkan juga membeli layanan Hosting Murah Unlimited dari IDwebhost yang sudah dilengkapi dengan fitur mod_rewrite. Plus, tim teknis mereka siap membantu mengaktifkannya kapan saja!

Ade Gusti

Member since 7 Aug 2024