Untuk memblokir URL yang memuat banyak parameter (multiple query parameters) di robots.txt, Anda wajib memanfaatkan karakter wildcard tanda bintang (*) dan tanda ampersand (&). Karena protokol robots.txt standar (RFC 9309) mendukung pattern matching sederhana, pendekatan paling efisien untuk memblokir URL yang mengandung dua atau lebih parameter sekaligus tanpa memblokir parameter tunggal adalah dengan menargetkan karakter pemisah &.
Sebagai contoh, jika Anda ingin membiarkan URL berparameter tunggal tetap dirayapi (seperti ?category=sepatu) tetapi ingin memblokir URL ketika parameter kedua digabungkan (seperti ?category=sepatu&sort=price), Anda cukup menuliskan direktif:
User-agent: *
Disallow: /*?*&*Aturan di atas bekerja dengan mencocokkan jalur apa pun yang diawali tanda tanya (?), diikuti karakter apa pun, lalu memuat tanda ampersand (&). Ini merupakan solusi paling ringkas untuk membatasi perayapan sistem penyaringan bertingkat (faceted navigation) di situs e-commerce atau portal berita tanpa harus menuliskan puluhan kombinasi parameter secara manual.
Sintaks Disallow untuk Berbagai Skenario Multiple Parameters
Pola pencocokan pada mesin perayap modern seperti Googlebot dan Bingbot mengevaluasi URL dari kiri ke kanan. Berikut adalah variasi pola sintaks untuk kebutuhan spesifik di lapangan:
1. Memblokir URL yang Mengandung Dua Parameter Tertentu (Bebas Urutan)
URL dinamis kerap mengubah urutan parameter tergantung interaksi pengguna (misalnya ?color=red&size=xl vs ?size=xl&color=red). Untuk memblokir halaman yang memuat kedua parameter tersebut terlepas dari posisinya, Anda memerlukan dua baris direktif:
User-agent: *
Disallow: /*?*color=*&*size=*
Disallow: /*?*size=*&*color=*2. Memblokir Kombinasi Parameter Sorting dan Filtering
Jika situs Anda memperbolehkan perayapan filter kategori utama namun ingin menghemat crawl budget dari kombinasi pengurutan harga atau pagination:
User-agent: *
# Blokir jika ada parameter sort bersamaan dengan parameter lain
Disallow: /*?*sort=*&*
Disallow: /*?*&*sort=*3. Memblokir Parameter Sesi atau Pelacakan yang Menumpuk
Parameter pelacakan seperti utm_*, fbclid, atau sessionid sering kali memicu loop perayapan ketika menempel pada parameter produk:
User-agent: *
Disallow: /*?*sessionid=*
Disallow: /*&sessionid=*
Disallow: /*?*utm_*
Disallow: /*&utm_*Matriks Pola Robots.txt dan Hasil Evaluasi URL
Tabel berikut mengilustrasikan bagaimana perayap mesin pencari mengevaluasi kombinasi URL nyata terhadap pola direktif yang diterapkan di robots.txt:
| Pola Direktif (robots.txt) | Contoh URL Pengujian | Status Akses | Penjelasan Teknis |
|---|---|---|---|
Disallow: /*?*&* | /produk?kategori=pria | ALLOWED | Hanya memiliki 1 parameter, tidak ada karakter &. |
Disallow: /*?*&* | /produk?kategori=pria&ukuran=42 | BLOCKED | Memenuhi pola: ada tanda ? diikuti karakter, lalu ada &. |
Disallow: /*?*&*&* | /catalog?cat=1&sort=asc | ALLOWED | Aturan ini hanya memblokir jika ada 3 parameter atau lebih (2 karakter &). |
Disallow: /*?*&*&* | /catalog?cat=1&brand=nike&sort=asc | BLOCKED | Memuat 3 parameter dengan dua simbol &. |
Disallow: /*?filter=*Allow: /*?filter=*$ | /toko?filter=sepatu | ALLOWED | Diizinkan karena aturan Allow berakhir persis setelah nilai filter (menggunakan $). |
Disallow: /*?filter=*Allow: /*?filter=*$ | /toko?filter=sepatu&page=2 | BLOCKED | Tidak cocok dengan pola Allow yang diakhiri tanda dolar ($). |
Langkah Teknis Implementasi dan Validasi di Server
Menerapkan direktif pemblokiran parameter ganda harus dilakukan secara berhati-hati agar halaman penting yang membutuhkan perayapan tidak terputus secara tidak sengaja. Jalankan alur verifikasi berikut:
- Identifikasi Pola URL Bersama: Buka Google Search Console pada laporan Crawl Stats (Statistik Perayapan) dan Pages untuk melihat parameter mana yang paling banyak menghabiskan permintaan perayapan tanpa menghasilkan indeks berkualitas.
- Tuliskan Aturan pada File Teks: Buka atau buat file
robots.txtyang terletak di root domain (misal:domain.com/robots.txt). Masukkan aturan wildcard di bawah blokUser-agentyang sesuai. - Validasi dengan Robots Testing Tool: Sebelum menerapkan ke server produksi, uji sintaks menggunakan fitur penguji robots.txt di Google Search Console atau inspeksi URL langsung. Pastikan URL tunggal menghasilkan status Allowed dan URL majemuk menghasilkan status Blocked.
- Deploy dan Periksa Header HTTP: Pastikan file
robots.txtdisajikan dengan statusHTTP 200 OKdan Content-Typetext/plain.
Dampak SEO: Perbedaan Disallow vs Tag Canonical pada Parameter
Penting untuk memahami bahwa memblokir URL di robots.txt dan menanganinya dengan canonical tag memiliki implikasi teknis yang berlawanan:
- Robots.txt Disallow: Mencegah bot mengunduh konten halaman sama sekali. Ini menghemat kuota perayapan (crawl budget), namun jika URL tersebut sudah memiliki backlink eksternal, Google tetap bisa mengindeks URL tersebut sebagai hasil pencarian tanpa cuplikan deskripsi (indexed without content), dan nilai sinyal PageRank tidak terkonsolidasi dengan optimal.
- Rel Canonical: Bot tetap harus merayapi halaman berparameter untuk membaca tag canonical yang mengarah ke URL utama. Ini memakan kuota perayapan, tetapi menjamin bahwa ekuitas tautan dan sinyal ranking terkumpul utuh ke URL kanonikal.
Jika situs Anda memiliki jutaan variasi parameter dari filter faceted, gunakan robots.txt dengan direktif /*?*&* untuk menyetop lonjakan perayapan ekstrem. Namun, jika jumlah variasi parameter hanya ratusan hingga beberapa ribu halaman, membiarkan bot merayapi dan membaca rel="canonical" atau menyematkan meta tag noindex, follow sering kali menjadi langkah yang lebih bersih untuk arsitektur indeks pencarian.