Redirect 301 vs. 308
301 dan 308 sama-sama pengalihan permanen. Perbedaan utamanya, 308 menjamin metode HTTP beserta body tetap dipertahankan saat lompatan. Pahami alasan 308 dibuat, mengapa Google dan Bing memprosesnya seperti 301, dan kapan kode ini layak dipilih.
Bahasa
1 sinyal bukti di halaman ini
- Alat aktif terkaitHTTP Status & Redirect Checker
301 dan 308 sama-sama pengalihan permanen, dan Google maupun Bing memproses 308 seperti 301 untuk crawling, pengindeksan, serta konsolidasi sinyal—dokumentasi Google menyebut 308 'setara dengan 301', Gary Illyes berkata 'kami cukup menggabungkannya dengan 301', dan Fabrice Canel dari Bing mengonfirmasi perlakuan yang sama. Pada tingkat protokol, perbedaan utamanya bersifat mekanis: 308 menjamin client mengulang metode permintaan yang sama (POST tetap POST dan body ikut dibawa) ke URL baru, sedangkan 301—kode dari era HTTP/1.0—ambigu khususnya soal POST yang berubah menjadi GET (RFC tidak membahas PUT atau DELETE). Untuk perpindahan halaman atau situs biasa, 301 tetap menjadi default praktis karena lebih lama, lebih dikenal, dan lebih luas didukung tooling/CDN/plugin. Pilih 308 hanya saat metode non-GET harus dipertahankan: endpoint API, URL webhook, target aksi formulir, atau alur POST autentikasi—dan tetap uji client nyata karena kode status saja tidak menjamin kredensial, cookie, maupun idempotensi. Tidak ada keunggulan SEO pada salah satunya; klaim bahwa semua 301 harus dimigrasikan ke 308 demi peringkat adalah mitos yang telah dibantah mesin pencari.
TL;DR — 301 dan 308 sama-sama pengalihan permanen, dan Google maupun Bing memperlakukan 308 seperti 301. Perbedaan teknis utamanya adalah jaminan metode: 308 menjamin browser mengirim ulang permintaan dengan cara yang sama (pengiriman formulir tetap menjadi pengiriman formulir), sedangkan 301 tidak menjamin hal itu untuk POST. Untuk pengalihan biasa karena “halaman ini berpindah” (terjemahan) “halaman ini berpindah”, gunakan 301. Gunakan 308 jika yang dialihkan bukan halaman biasa—misalnya API atau formulir—dan metode permintaan asli harus sampai tanpa berubah. Namun, kode status saja tidak menjamin cookie atau kredensial tetap ada; uji client nyata.
Apa arti kedua kode ini
Saat server mengirim Anda dari satu URL ke URL lain, server memberi respons dengan kode status. Dua kode ini berarti “perpindahan permanen”:
- 301 — “Moved Permanently.” (terjemahan) “Dipindahkan Permanen.” Kode pengalihan permanen yang asli dan paling lama; sudah digunakan sejak awal web.
- 308 — “Permanent Redirect.” (terjemahan) “Pengalihan Permanen.” Kode yang lebih baru (ditambahkan pada 2015) dengan fungsi sama, ditambah satu jaminan.
Jaminan tambahan itu adalah inti seluruhnya. Bayangkan apa yang terjadi saat Anda mengirim formulir: browser mengirim permintaan POST yang membawa data Anda. Dengan 301 gaya lama, browser boleh diam-diam mengubah POST itu menjadi GET biasa saat mengikuti redirect — sehingga data Anda hilang. 308 melarangnya. Kode ini mengatakan: ulangi permintaan yang persis sama, lengkap dengan metode dan datanya, ke alamat baru.
Apakah ini penting untuk SEO? Tidak.
Ini bagian yang sering disalahpahami, jadi saya jelaskan: untuk penelusuran, 301 dan 308 sama. Dokumentasi Google secara harfiah menggambarkan 308 sebagai “equivalent to 301.” (terjemahan) “setara dengan 301.” Google menyatakannya dengan lebih tegas—Google’s Gary Illyes put it even more bluntly — (terjemahan) “Gary Illyes dari Google mengatakannya dengan lebih lugas—” “we just merge that with 301 so we really don’t care.” (terjemahan) “kami cukup menggabungkannya dengan 301, jadi kami benar-benar tidak peduli.” Fabrice Canel dari Bing mengonfirmasi hal yang sama: “Bing treats 308 redirects the same as 301 redirects.” (terjemahan) “Bing memperlakukan redirect 308 sama seperti redirect 301.”
Jadi, abaikan siapa pun yang mengatakan 308 “lebih baik untuk SEO” (terjemahan) “lebih baik untuk SEO”, atau bahwa semua 301 harus diubah menjadi 308 demi kenaikan peringkat. Tidak ada kenaikan seperti itu; mesin pencari sudah mengatakannya.
Evidence for this claim Google treats 308 as equivalent to 301 for Search while advising sites to use the semantically appropriate status code. Scope: Google Search processing; client behavior still differs when method preservation matters. Confidence: high · Verified: Google: HTTP status codes and SearchJadi, mana yang harus saya gunakan?
- Mengalihkan halaman biasa (URL dipindahkan, beralih ke HTTPS, atau ganti domain)? → gunakan 301. Ini default yang dipahami sebagian besar alat, CDN, dan plugin.
- Mengalihkan sesuatu yang membawa data (endpoint API, URL pengiriman formulir, atau POST login)? → gunakan 308 agar metode permintaan asli tetap bertahan selama lompatan. Tetap pastikan kredensial dan cookie tiba sesuai harapan karena kode status saja tidak menjaminnya.
Jika yang dialihkan bukan API atau formulir, hampir pasti Anda membutuhkan 301. Itu versi singkatnya.
Ingin gambaran lengkap—mengapa 308 dibuat, apa tepatnya yang dikatakan Google dan Bing, serta cara menerapkan masing-masing? Buka tab Lanjutan.
TL;DR — 301 dan 308 sama-sama redirect permanen, dan Google maupun Bing memproses 308 dengan cara yang sama seperti 301 — dokumentasi Google menyebut 308 “equivalent to
301,” (terjemahan) “setara dengan301,” Illyes berkata “we just merge that with 301,” (terjemahan) “kami menggabungkannya dengan 301,” dan Canel menegaskan bahwa Bing “treats 308 redirects the same as 301 redirects.” (terjemahan) “memperlakukan redirect 308 sama seperti redirect 301.” Pada tingkat protokol, perbedaan utamanya adalah mempertahankan metode: 308 (RFC 7538, 2015) secara mekanis menjamin client mengulang metode yang sama pada URL baru (body ikut terkirim); 301 berasal dari era HTTP/1.0 dan ambigu khususnya soal POST menjadi GET — RFC tidak membahas PUT atau DELETE, jadi jangan menggeneralisasi catatan POST itu. 308 dibuat sebagai saudara permanen dari 307 — RFC 7231 mendefinisikan kode sementara yang mempertahankan metode (307), tetapi belum ada versi permanennya, dan 308 mengisi kekosongan itu. Jadikan 301 default untuk migrasi halaman/situs/HTTPS biasa (lebih lama, lebih dikenal luas, dan dukungan CDN/CMS/plugin lebih baik). Pilih 308 hanya saat harus mempertahankan permintaan non-GET — endpoint API, URL webhook, target aksi formulir, alur POST autentikasi — dan tetap verifikasi kredensial, cookie, serta idempotensi pada client nyata, bukan menganggap kode status sudah menjaminnya. Keduanya tidak “lebih baik untuk SEO” — itu mitos yang sudah dibantah secara eksplisit oleh mesin pencari.
Perbedaan semantik adalah yang utama
Baik 301 maupun 308 menyampaikan hal yang sama kepada mesin pencari soal permanensi: sumber daya telah berpindah secara permanen dan tujuan seharusnya menjadi kanonik. Perbedaannya hanya satu jaminan mekanis yang sempit tentang cara klien mengulangi permintaan.
- 301 (Moved Permanently). Ini adalah kode pengalihan permanen asli dari era HTTP/1.0. Sejak awal, maknanya ambigu tentang apakah metode permintaan harus dipertahankan. Dalam praktik, browser dan klien lain secara historis mengubah POST menjadi GET saat mengikuti 301—aman untuk halaman biasa, tetapi diam-diam merusak apa pun yang bergantung pada metode atau body permintaan.
- 308 (Permanent Redirect). Ini adalah versi ketat. Kode ini menjamin klien mengulang metode dan body yang persis sama ke URL baru. POST tetap POST; payload ikut terbawa.
Kalimat satu baris yang bisa saya berikan: 308 adalah 301 yang juga menjamin browser tidak diam-diam mengubah POST menjadi GET. Evidence for this claim RFC 9110 defines both 301 and 308 as permanent redirects; 308 forbids changing the request method, while 301 permits POST-to-GET rewriting for historical reasons. Scope: HTTP semantics for 301 and 308 responses. Confidence: high · Verified: IETF: RFC 9110 §§15.4.2, 15.4.9 IETF: RFC 7538 §3 — 308 Permanent Redirect
Mengapa 308 ada: “307 permanen” yang hilang
Inilah bagian yang hampir tidak pernah dijelaskan, dan cara paling jelas untuk memahami seluruh perbandingan ini. Masalahnya adalah celah dalam spesifikasi.
Kode pengalihan modern tersusun dalam kisi sementara/permanen serta longgar/ketat:
| Sementara | Permanen | |
|---|---|---|
| Metode dapat berubah (longgar) | 302 | 301 |
| Metode dipertahankan (ketat) | 307 | 308 |
RFC 7231 mendefinisikan 307—pengalihan sementara yang mempertahankan metode—sebagai pasangan ketat untuk 302 yang longgar dan ambigu. Namun, RFC itu tidak mendefinisikan padanan permanen yang mempertahankan metode. Ada kode sementara yang ketat, tetapi tidak ada kode permanen yang ketat. RFC 7538 (April 2015) menambahkan 308 untuk mengisi celah itu: hubungan 308 terhadap 301 sama seperti 307 terhadap 302. Jika Anda membaca perbandingan 302-vs-307 di klaster ini, 301-vs-308 adalah hubungan yang sama satu baris di atas—permanen-longgar versus permanen-ketat.
301 mendahului seluruh kerangka ini. Kode tersebut berasal dari HTTP/1.0, sebelum konsep “pertahankan metode” diformalkan; itulah sebabnya maknanya ambigu dan mengapa 308 harus dibuat, bukan sekadar diperjelas.
Arti pelestarian metode dan body dalam praktik
Untuk sebagian besar pengalihan—seseorang mengeklik tautan, browser mengirim GET, lalu server mengarahkannya ke tempat lain—tidak ada perbedaan praktis. Browser modern mempertahankan GET pada 301 dengan baik. Perbedaannya baru penting jika permintaan bukan GET biasa:
| Jenis permintaan | Di balik 301 | Di balik 308 |
|---|---|---|
GET (halaman biasa) | Diikuti sebagai GET (dalam praktik, aman) | Diikuti sebagai GET |
POST (pengiriman formulir, API) | Dapat diam-diam diubah menjadi GET, body hilang | Diulang sebagai POST, body utuh |
PUT / DELETE (API) | Tidak didokumentasikan RFC—kelonggaran historis hanya POST→GET, jadi perlakukan sebagai perilaku klien yang spesifik dan belum terverifikasi | Metode dipertahankan (aturan mengikuti otomatis 308 tidak khusus untuk POST) |
Risiko 301 terutama berkisar pada POST dan body permintaan—formulir, API, webhook, dan alur autentikasi. Pernyataan “A 301 will always break my form” (terjemahan) “301 akan selalu merusak formulir saya” adalah berlebihan; GET biasa aman. Pengecualian historis spesifikasi untuk 301 secara khusus menyangkut POST→GET; spesifikasi tidak mendokumentasikan perilaku PUT atau DELETE, jadi jangan menganggap cara kedua kode menangani metode tersebut tanpa menguji klien yang sebenarnya. Yang jelas dari spesifikasi: 308 melarang klien mengubah metode apa pun yang diulangnya—aturan itu tidak terbatas pada POST. Yang dijamin di sini adalah pelestarian metode; header, cookie, kredensial, atau transaksi yang lebih luas tidak otomatis dijanjikan tetap utuh. Semua itu bergantung pada klien dan integrasi, sehingga layak diuji untuk hal yang penting (lihat daftar periksa di bawah).
Apakah Google memperlakukan 301 dan 308 secara berbeda untuk SEO? Tidak.
Ini pertanyaan redirect yang langka: dokumentasi, para Googler, dan Bing semuanya sepakat—dan telah konsisten selama bertahun-tahun.
Dokumentasi kode status HTTP Google menempatkan 301 dan 308 dalam kelompok yang sama. Baris 301 berbunyi: “Google follows the redirect, and Google systems use the redirect as a strong signal that the redirect target should be processed.” (terjemahan) “Google mengikuti redirect, dan sistem Google menggunakan redirect sebagai sinyal kuat bahwa target redirect harus diproses.” Baris 308 hanya satu baris: “Equivalent to 301.” (terjemahan) “Setara dengan 301.” Itu pernyataan paling kuat dan paling mudah dikutip — dokumentasi Google sendiri secara harfiah menyamakan keduanya. Evidence for this claim Google treats 308 as equivalent to 301 for Search while advising sites to use the semantically appropriate status code. Scope: Google Search processing; client behavior still differs when method preservation matters. Confidence: high · Verified: Google: HTTP status codes and Search
Panduan redirect menegaskannya. Panduan itu dibuka dengan “The 301 and 308 status codes mean that a page has permanently moved to a new location” (terjemahan) “kode status 301 dan 308 berarti sebuah halaman telah dipindahkan secara permanen ke lokasi baru,” lalu tidak membuat pembedaan lebih lanjut di antara keduanya.
Para Googler telah menyampaikan hal yang sama secara informal selama bertahun-tahun, jauh sebelum hal itu ditulis dalam dokumentasi:
- Gary Illyes (2021): dalam sebuah utas tentang apakah Google memperlakukan 308 seperti 301, ia berkata Google “just merge[s] that with 301 so we really don’t care.” (terjemahan) “kami cukup menggabungkannya dengan 301, jadi kami benar-benar tidak peduli.” Tulisan Barry Schwartz membingkainya sebagai momen ketika hal itu menjadi resmi: “Three years later it was added to the official Google documents that Google treats 308 redirects like 301 redirects — so now it is official.” (terjemahan) “Tiga tahun kemudian, hal itu ditambahkan ke dokumentasi resmi Google yang menyatakan bahwa Google memperlakukan redirect 308 seperti redirect 301—jadi kini sudah resmi.”
- John Mueller (2018): tiga tahun sebelumnya, ia berkata—“If you use it [a 308 redirect] like a 301 we’ll treat it as such.” (terjemahan) “Jika Anda menggunakan [redirect 308] seperti 301, kami akan memperlakukannya demikian.” Jadi, inilah sikap informal Google sejak lama sebelum dokumentasi menyusul.
Namun, ada satu nuansa penting dalam dokumentasi Google, dan itulah tesis artikel ini. Tepat setelah menyamakan kode, Google menekankan bahwa keduanya berbeda secara semantik: gunakan kode status yang sesuai untuk jenis pengalihan agar client lain (misalnya e-reader dan mesin pencari lain) juga dapat memperoleh manfaat. Dengan kata lain: pilih kode demi ketepatan dan interoperabilitas, bukan SEO — karena SEO tidak membedakannya.
Apakah Bing memperlakukan 301 dan 308 secara berbeda? Juga tidak.
Sebagian besar tulisan tentang topik ini hanya membahas Google, sehingga ada celah. Fabrice Canel dari Bing menjawabnya secara langsung pada September 2024 ketika menanggapi pertanyaan apakah Bing memperlakukan redirect permanen 308 sama seperti 301: “Bing treats 308 redirects the same as 301 redirects.” (terjemahan) “Bing memperlakukan redirect 308 sama seperti redirect 301.” Schwartz mencatat bahwa hal ini sesuai dengan pernyataan Google pada 2021.
Jadi, kedua mesin utama telah menyatakannya secara publik: 308 secara fungsional identik dengan 301 untuk crawling, pengindeksan, dan konsolidasi sinyal. Tidak ada mesin yang menganggap 308 lebih unggul untuk SEO.
Mitos yang perlu dibantah: “308 is better for SEO / migrate all your 301s” (terjemahan) “308 lebih baik untuk SEO / migrasikan semua 301 Anda”
Saya akan mengatakannya terus terang karena halaman berkualitas rendah terus menyiratkan hal ini. Tidak ada manfaat SEO memilih 308 dibanding 301 untuk redirect biasa, dan tidak ada alasan memigrasikan semua 301 yang sudah ada ke 308. Ini bukan opini saya; itulah posisi yang dinyatakan mesin pencari:
- Dokumentasi Google menyebut 308 “equivalent to
301.” (terjemahan) “setara dengan301.” - Illyes berkata: “we just merge that with 301.” (terjemahan) “kami cukup menggabungkannya dengan 301.”
- Canel menyatakan bahwa Bing “treats 308 redirects the same as 301 redirects.” (terjemahan) “memperlakukan redirect 308 sama seperti redirect 301.”
Mengganti semua 301 menjadi 308 tidak memberi keuntungan peringkat dan menambah risiko pada tooling lama atau edge yang hanya mengenali 301/302 dengan baik (akan dibahas di bawah). Itu hanya pergantian tanpa manfaat.
Ada baiknya membandingkan hal ini dengan mitos yang memang masih diperdebatkan: klaim lama “301s lose/dilute PageRank” (terjemahan) “301s lose/dilute PageRank”. Klaim itu masih muncul dan telah berulang kali dibantah Google. Namun, perhatikan bedanya—mitos pengenceran PageRank adalah kesalahpahaman yang dikoreksi Google, sedangkan kesetaraan 301-vs-308 dinyatakan konsisten oleh Google, Bing, dan dokumentasi sejak 2018. Pertanyaan ini sudah tuntas, bukan sengketa. (Kisah PageRank lengkap ada di perbandingan 301-vs-302 dalam klaster ini.)
Kapan 308 merupakan pilihan yang tepat secara teknis
Pilih 308 ketika hilangnya metode atau body permintaan akan merusak fungsionalitas (bukan peringkat):
- Endpoint API yang dipindahkan dan menerima
POST/PUT/DELETEdari klien. - URL webhook—pengirim melakukan POST dengan payload yang tidak boleh hilang.
- Target aksi formulir—
<form>mengirim data yang harus tiba utuh di URL baru. - Alur POST autentikasi/login yang membawa kredensial atau token di dalam body.
Khusus untuk POST, 301 berisiko membuat klien mengubah permintaan menjadi GET sehingga body terhenti; 308 melarang perubahan itu. Untuk PUT/DELETE, RFC juga tidak merinci perilaku 301, jadi jangan berasumsi—aturan pelestarian metode 308 tetap berlaku apa pun metodenya.
Sebelum melakukan cutover API, webhook, atau alur autentikasi, ingat bahwa kode status saja tidak menjamin semuanya selamat melewati lompatan—periksa hal-hal berikut sebagai bagian dari perubahan yang sama:
- Kredensial, cookie, dan header autentikasi. Tidak ada kode yang menjanjikan hal ini; uji klien sebenarnya (browser, SDK, atau pengirim webhook), jangan berasumsi semuanya ikut terbawa.
- Perilaku lintas origin. Redirect yang melintasi origin dapat mengubah apa yang dikirim browser atau klien fetch—verifikasi dengan pemanggil nyata, bukan hanya
curlmanual. - Idempotensi dan efek samping ganda. Jika permintaan yang diulang tidak idempoten (misalnya webhook yang membuat record atau POST pembayaran), percobaan ulang klien setelah redirect dapat mengeksekusi tindakan dua kali. Pastikan tujuan menangani pengulangan dengan aman sebelum mengandalkan 308 untuk “just work” (terjemahan) “berfungsi begitu saja.”
- Lakukan staging dan siapkan rollback dengan mempertimbangkan cache. Respons 301 dan 308 dapat di-cache secara heuristik, sehingga klien atau perantara yang sudah menyimpan respons lama mungkin tetap menggunakannya setelah kode diubah. Uji dengan klien baru dan klien yang telah mengunjungi URL sebelum perubahan, lalu siapkan rencana rollback yang memperhitungkan keadaan cache—jangan menganggap pergantian terjadi seketika.
Kapan 301 tetap menjadi pilihan pragmatis
Untuk semua hal yang berupa GET biasa—dan itulah sebagian besar yang dialihkan oleh praktisi SEO—301 tetap menjadi pilihan yang masuk akal:
- Perubahan halaman/URL standar dan pemindahan konten.
- Perubahan domain dan penggabungan situs.
- Migrasi HTTP → HTTPS.
- Konsolidasi varian
www/non-wwwatau garis miring penutup.
Mengapa memilih kode yang lebih lama ketika 308 “lebih ketat”? Ada tiga alasan praktis:
- Pengenalan lebih luas. 301 mendahului 308 dua dekade dan dikenali oleh sebagian besar browser, proxy, CDN, crawler, serta alat analitik yang digunakan saat ini maupun pada sistem lama. 308 kini sudah berusia lebih dari satu dekade dan didukung luas, tetapi klien lama dan alat edge masih memiliki banyak variasi—jangan menganggap semua alat di stack Anda mengenalinya tanpa pemeriksaan.
- Kenyataan tooling. Banyak alat umum memakai 301/302 sebagai default atau hanya mengekspos keduanya dengan baik. Plugin redirect WordPress, pembuat aturan Cloudflare, dan beberapa platform serverless/CDN cenderung menggunakan 301/302; beberapa bahkan mengeluarkan 302/307 terlepas dari konfigurasi Anda. Bagi pemilik situs nonteknis, “what my platform actually supports” (terjemahan) “apa yang sebenarnya didukung platform saya” sering menjadi penentu nyata.
- Tidak ada keuntungan. Google dan Bing memproses kedua kode dengan cara yang sama untuk crawling dan pengindeksan, jadi tidak ada alasan memilih kode yang dukungannya lebih sempit untuk pemindahan halaman biasa.
Aturan praktisnya: GET permanen biasa → 301; permintaan non-GET yang harus dipertahankan → 308.
Cara menerapkan masing-masing
Sintaksnya hampir sama—Anda hanya mengubah angkanya.
Apache (.htaccess)
# 301 — permanent, for a normal page move
Redirect 301 /old-page /new-page
# 308 — permanent + method-preserving, for an API/form endpoint
RewriteEngine On
RewriteRule ^old-api/(.*)$ /new-api/$1 [R=308,L]nginx
# 301
location = /old-page {
return 301 /new-page;
}
# 308 — preserves POST body to the API
location = /old-api {
return 308 /new-api;
}Catatan ini berlaku untuk keduanya: beberapa CDN, platform edge, dan plugin CMS tidak menghormati 308 yang Anda konfigurasikan dan malah mengirim 301/302/307. Jika mempertahankan metode benar-benar penting, verifikasi respons yang benar-benar Anda kirim (gunakan curl pada URL dan baca baris status), jangan hanya mempercayai konfigurasi. Sintaks direktif juga berubah antarversi server dan framework — periksa dokumentasi Apache/nginx versi Anda (atau framework jika yang menghasilkan redirect), jangan menganggap cuplikan di atas masih sama persis untuk penyiapan Anda.
Pengungkit yang lebih penting daripada pilihan 301-vs-308: panjang rantai
Kode apa pun yang dipilih, pengungkit performa yang lebih besar adalah menjaga redirect tetap singkat. Google mengikuti sekitar 10 lompatan redirect sebelum menyerah, dan setiap lompatan tambahan menambah latensi serta peluang sinyal bocor. Satu lompatan bersih dengan kode yang tepat lebih baik daripada rantai kode yang “secara teknis benar” (terjemahan) “technically correct”. Arahkan langsung ke tujuan akhir.
Posisi artikel ini dalam klaster
301 dan 308 adalah dua kode redirect permanen, dan masing-masing memiliki pembahasan mendalam di klaster ini bersama pasangan sementaranya (302 dan saudara ketatnya, 307) serta anggota 3xx lainnya, 303. Perbandingan tersebut membentuk sebuah kisi: 301-vs-302 adalah permanen-versus-sementara, 302-vs-307 adalah pasangan sementara-longgar-versus-ketat, sedangkan artikel ini—301-vs-308—adalah pasangan permanen-longgar-versus-ketat. Waspadai juga bahaya operasional seperti rantai redirect dan loop redirect. Untuk seluruh keluarga respons server, lihat Hub Kode Status HTTP; jenis redirect juga merupakan salah satu sinyal kanonikalisasi yang dibahas di kanonikalisasi.
Ringkasan AI
Ringkasan singkat versi Lanjutan:
- Keduanya adalah redirect permanen, dan Google maupun Bing memproses 308 sama seperti 301. Dokumentasi Google menyebut 308 “equivalent to
301,” (terjemahan) “setara dengan301,” Illyes berkata “we just merge that with 301,” (terjemahan) “kami menggabungkannya dengan 301,” dan Canel dari Bing menegaskan “Bing treats 308 redirects the same as 301 redirects.” (terjemahan) “Bing memperlakukan redirect 308 sama seperti redirect 301.” - Pada tingkat protokol, perbedaan utamanya adalah pelestarian metode. 308 (RFC 7538, 2015) menjamin klien mengulang metode yang sama pada URL baru (body ikut terkirim). 301 berasal dari era HTTP/1.0 dan ambigu khususnya soal POST→GET—RFC tidak membahas PUT atau DELETE, jadi jangan menggeneralisasi catatan itu.
- Mengapa 308 ada: RFC 7231 mendefinisikan kode sementara yang mempertahankan metode (307), tetapi tidak memiliki kode permanen yang setara. 308 mengisi celah itu—hubungannya dengan 301 sama seperti 307 dengan 302.
- Dalam praktik, ini hanya penting untuk permintaan non-GET. GET biasa aman dengan 301. Risikonya ada pada POST/PUT/DELETE dan body permintaan—formulir, API, webhook, serta alur autentikasi.
- Gunakan 308 saat metode non-GET harus dipertahankan: endpoint API, URL webhook, target aksi formulir, dan alur login POST.
- Gunakan 301 untuk semua hal lain: perpindahan halaman, perubahan domain, migrasi HTTPS, serta www/non-www—kode ini lebih lama, dikenal luas, dan didukung lebih baik oleh CDN/CMS/plugin.
- Mitos yang harus dihentikan: 308 bukan “better for SEO,” (terjemahan) “lebih baik untuk SEO,” dan tidak ada alasan memigrasikan semua 301 ke 308. Mesin pencari sudah menyatakan hal itu secara konsisten sejak 2018. Pilih kode demi ketepatan dan interoperabilitas, bukan peringkat (perhatikan catatan Google bahwa keduanya “berbeda secara semantik”).
- Pengungkit yang lebih besar daripada pilihan kode: jaga rantai redirect tetap pendek (Google mengikuti sekitar 10 hop); arahkan langsung ke URL akhir.
Dokumentasi resmi
Dokumentasi sumber utama dari mesin pencari dan spesifikasi.
- Kode status HTTP, error jaringan dan DNS, serta Google Search — referensi yang mencantumkan 308 sebagai “Equivalent to
301” (terjemahan) “setara dengan301” serta catatan bahwa keduanya “berbeda secara semantik, tetapi diperlakukan sama”. - Redirect dan Google Search — “The
301and308status codes mean that a page has permanently moved to a new location” (terjemahan) “kode status301dan308berarti sebuah halaman telah berpindah secara permanen ke lokasi baru,” beserta implementasi sisi server dan catatan tentang redirect JavaScript. - Pemindahan situs dengan perubahan URL — menjelaskan posisi redirect permanen dalam migrasi (pertahankan setidaknya selama satu tahun).
- Search Off the Record — “Mari membahas redirect” (John Mueller dan Martin Splitt) — episode yang secara khusus membahas jenis redirect 308 dan 307.
Bing / Microsoft
- Migrasi situs dengan Bing — panduan pemindahan situs Bing yang menempatkan 301 sebagai sinyal yang memadai untuk perpindahan permanen.
Spesifikasi / referensi
- RFC 7538 — Kode Status HTTP 308 (Permanent Redirect) — spesifikasi 2015 yang membuat 308 sebagai redirect permanen yang mempertahankan metode.
- MDN — 308 Permanent Redirect — penjelasan pelestarian metode/body dan perbandingan dengan 301.
Kutipan dari sumber
Pernyataan publik dari Google dan Bing. Jika halaman sumber mendukungnya, setiap tautan langsung menuju bagian yang dikutip.
Dokumentasi Google — 308 setara dengan 301
- “Google follows the redirect, and Google systems use the redirect as a strong signal that the redirect target should be processed.” (terjemahan) “Google mengikuti redirect, dan sistem Google menggunakan redirect sebagai sinyal kuat bahwa target redirect harus diproses.” (baris 301) — Google Search Central. Lompat ke kutipan
- “Equivalent to
301.” (terjemahan) “Setara dengan301.” (seluruh baris 308) Lompat ke kutipan - “While Google treats these status codes the same way, keep in mind that they’re semantically different. Use the status code that’s appropriate for the redirect so other clients (for example, e-readers, other search engines) may benefit from it.” (terjemahan) “Meskipun Google memperlakukan kode status ini dengan cara sama, ingat bahwa keduanya berbeda secara semantik. Gunakan kode status yang sesuai untuk redirect agar client lain (misalnya e-reader atau mesin pencari lain) dapat memperoleh manfaat.” Lompat ke kutipan
Dokumentasi Google — kedua kode berarti “permanently moved” (terjemahan) “dipindahkan secara permanen”
- “The
301and308status codes mean that a page has permanently moved to a new location.” (terjemahan) “Kode status301dan308berarti sebuah halaman telah berpindah secara permanen ke lokasi baru.” Lompat ke kutipan
Gary Illyes, Google (2021) (melalui Search Engine Roundtable) — 308 digabungkan dengan 301
- “we just merge that with 301 so we really don’t care iirc.” (terjemahan) “kami cukup menggabungkannya dengan 301, jadi kami benar-benar tidak peduli, setahu saya.” Coverage
John Mueller, Google (2018) (melalui Search Engine Roundtable) — sikap informal sebelumnya
- “If you use it [a 308 redirect] like a 301 we’ll treat it as such.” (terjemahan) “Jika Anda menggunakan [redirect 308] seperti 301, kami akan memperlakukannya demikian.” Coverage
Fabrice Canel, Microsoft Bing (2024) (melalui Search Engine Roundtable) — kesetaraan Bing
- “Bing treats 308 redirects the same as 301 redirects.” (terjemahan) “Bing memperlakukan redirect 308 sama seperti redirect 301.” Coverage
#:~:text= terhadap dokumentasi yang sedang tayang. Pernyataan Illyes 2021, Mueller 2018, dan Canel 2024 awalnya diposting di X/Twitter dan direproduksi di sini melalui liputan sezaman Search Engine Roundtable—verifikasi terhadap sumber asli sebelum menganggapnya final. Episode Search Off the Record Google, “Let’s talk redirects” (terjemahan) “Mari membahas redirect”, membahas 307/308, tetapi transkrip resminya tidak berhasil diperoleh untuk artikel ini sehingga tidak ada kutipan yang diambil langsung darinya. Redirect permanen mana yang sebaiknya saya gunakan: 301 atau 308?
Karena Google dan Bing memperlakukan 301 dan 308 sama untuk crawling dan pengindeksan, pohon ini sama sekali bukan soal peringkat—melainkan satu pertanyaan: apakah permintaan membawa metode/body yang perlu dipertahankan? Jawab pertanyaan itu dan selesai.
301 or 308 — which permanent redirect should I use?
Versi singkatnya: GET biasa → 301; permintaan non-GET yang harus dipertahankan → 308. Untuk SEO, keduanya dapat dipertukarkan; jadi pertanyaan tentang metode adalah satu-satunya penentu.
Kisi permanensi × metode
Pilih di antara empat kode redirect umum berdasarkan dua sumbu. Perlakuan SEO mengikuti sumbu pertama; perilaku aplikasi mengikuti sumbu kedua.
| Metode boleh berubah | Metode harus dipertahankan | |
|---|---|---|
| Sementara | 302 | 307 |
| Permanen | 301 | 308 |
Ikuti keputusan dalam urutan ini:
- Apakah perpindahannya permanen? Jika tidak, tetap di baris sementara. Jika ya, gunakan baris permanen agar tujuan menjadi kanonik yang dimaksud.
- Apakah permintaan dapat membawa metode/body yang harus dipertahankan? Halaman biasa dengan
GETtidak memerlukan jaminan ketat. PermintaanPOST,PUT,DELETE, webhook, formulir, atau API mungkin memerlukannya. - Pilih selnya. Perpindahan halaman permanen biasa →
301. Perpindahan endpoint non-GET permanen →308. - Verifikasi respons yang dikirim. Default platform dapat berbeda dari kode yang dipilih dalam UI atau framework. Uji respons dan permintaan yang dialihkan, bukan hanya konfigurasinya.
Kisi ini membuat pertanyaan SEO sengaja membosankan: Google dan Bing memperlakukan 301 dan 308 sama. Pilih di antara keduanya demi ketepatan HTTP.
301 vs. 308 secara ringkas
| Pertanyaan | 301 Moved Permanently | 308 Permanent Redirect |
|---|---|---|
| Permanensi | Permanen | Permanen |
| Perlakuan SEO Google/Bing | Sinyal permanen yang sama | Sinyal permanen yang sama |
| Metode/body permintaan | Dapat berubah, terutama POST → GET | Harus dipertahankan |
| Paling cocok untuk | Halaman biasa, domain, HTTPS, normalisasi URL | API, webhook, endpoint formulir/autentikasi dengan permintaan non-GET |
| Keunggulan utama | Tooling universal dan dukungan lama | Jaminan ketat atas metode/body |
| Alasan buruk memilihnya | ”301 passes more SEO value” (terjemahan) “301 meneruskan nilai SEO lebih besar” | “308 gives a ranking boost” (terjemahan) “308 memberi peningkatan peringkat” |
Aturan praktis: GET halaman permanen biasa → 301; perpindahan endpoint permanen yang harus menerima permintaan non-GET secara utuh → 308.
Alat untuk memverifikasi redirect permanen
Alat gratis Patrick
- Redirect Checker — periksa status pertama yang sebenarnya, setiap lompatan, dan tujuan akhir. Gunakan untuk menemukan platform yang mengeluarkan
301,302, atau307padahal Anda mengonfigurasi308. - Bulk HTTP Status Code Checker — periksa hingga 500 URL halaman dan ekspor kode atau rantai campuran di seluruh migrasi.
Verifikasi pelestarian metode saat itu penting
curldengan metode permintaan nyata dan payload uji yang aman — pastikan permintaan yang dialihkan tetapPOST/PUT/DELETEdan target menerima body. Gunakan endpoint staging atau non-destruktif.- Log aplikasi dan gateway — bandingkan penanganan metode dan body di sumber serta tujuan. Pemeriksa status dapat memverifikasi
308; hanya sistem penerima yang dapat membuktikan permintaan tiba secara utuh. - Panel Network di DevTools browser — berguna untuk alur formulir, tetapi uji client API dan webhook non-browser secara terpisah karena perilaku client itulah alasan perbedaan ini penting.
Uji diri: 301 vs. 308
Lima pertanyaan tentang perbedaan kedua redirect permanen ini dan cara mesin pencari memperlakukannya. Pilih jawaban untuk setiap pertanyaan, lalu periksa hasilnya.
Referensi yang layak Anda baca
Tulisan terkait saya
- 11 Jenis Redirect dan Dampak SEO-nya (Ahrefs, bersama Joshua Hardwick) — ulasan lengkap saya tentang setiap jenis redirect. Baris 308 menyebutnya “the same as a 301 redirect, except it retains the HTTP method of the original request, GET or POST.” (terjemahan) “sama seperti redirect 301, kecuali metode HTTP permintaan asli, GET atau POST, tetap dipertahankan.” Penilaian saya untuk perbandingan ini: “For SEO purposes, they’re the same, but if you have data being sent through forms, you don’t want to be switching between GET and POST.” (terjemahan) “Untuk keperluan SEO, keduanya sama, tetapi jika ada data yang dikirim melalui formulir, Anda tidak boleh berpindah antara GET dan POST.” Tulisan itu juga memuat urutan implementasi redirect permanen yang saya sukai: 308/301 terlebih dahulu, lalu refresh meta/HTTP, kemudian JavaScript.
- Kode Status HTTP dan Dampak SEO-nya (Ahrefs) — menjelaskan bahwa 308 “has the same functionality as a 301 redirect, except you can’t switch between POST and GET,” (terjemahan) “memiliki fungsi yang sama seperti redirect 301, kecuali Anda tidak dapat berpindah antara POST dan GET,” serta bahwa “308s are treated the same as 301s and consolidate forward.” (terjemahan) “308 diperlakukan sama seperti 301 dan mengonsolidasikan sinyal ke depan.”
- Panduan Pemula untuk SEO Teknis — menjelaskan posisi redirect dalam gambaran yang lebih besar.
Pembicaraan saya
- Patrick Stox di SlideShare dan Speaker Deck — presentasi SEO teknis saya; beberapa membahas redirect dan kanonikalisasi. (Penafian tetap saya berlaku: “Ini adalah pemahaman saya tentang sistem… mungkin tidak 100% lengkap atau akurat.”)
Dokumentasi resmi
- Google — Kode status HTTP dan Google Search (308 = “Equivalent to 301” (terjemahan) “Setara dengan 301”) dan Panduan redirect.
- RFC 7538 — Kode Status HTTP 308 (Permanent Redirect) — alasan 308 dibuat.
- MDN — 308 Permanent Redirect — referensi pelestarian metode/body.
Dari industri
- Google secara resmi memperlakukan redirect 308 seperti redirect 301 (Search Engine Roundtable, 2021) — kutipan Gary Illyes, “we just merge that with 301” (terjemahan) “kami cukup menggabungkannya dengan 301”.
- Google dapat memperlakukan redirect 308 seperti redirect 301 (Search Engine Roundtable, 2018) — pernyataan John Mueller sebelumnya, “we’ll treat it as such” (terjemahan) “kami akan memperlakukannya demikian”.
- Bing memperlakukan redirect 308 sama seperti redirect 301 (Search Engine Roundtable, 2024) — konfirmasi Fabrice Canel.
- Google membantah mitos tentang jenis redirect (Search Engine Journal) — “Use the technically correct redirect type.” (terjemahan) “Gunakan jenis redirect yang secara teknis tepat.”
- Redirect permanen 308: arti dan kapan menggunakannya (Semrush) — ringkasan yang baik untuk dibandingkan.
- r/TechSEO — komunitas untuk membahas masalah redirect dan kanonikalisasi.
Log perubahan
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 6 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 17 Jul 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Try it live
These are real endpoints on this site — not a simulation.
Hit them from the button, open them in a new tab, or
curl -i them from your terminal, and the server answers with the actual status code this article is about.