Panduan Pengalihan Meta Refresh
Apa itu pengalihan meta refresh, posisi mekanisme ini di antara pengalihan sisi server dan JavaScript dalam urutan preferensi Google, perbedaan refresh instan dan tertunda, serta alasan mekanisme ini tidak dianjurkan.
Bahasa
Pengalihan meta refresh adalah tag HTML <meta http-equiv="refresh"> atau header HTTP Refresh yang setara, bukan kode status HTTP. Server mengembalikan respons 200 biasa, lalu browser menjalankan pengalihan setelah halaman dianggap selesai dimuat; ketergantungan inilah yang membuatnya lebih lemah daripada pengalihan sisi server. Google menafsirkan versi instan dengan content="0" sebagai pengalihan permanen dan versi tertunda sebagai pengalihan sementara. Gunakan mekanisme ini hanya sebagai pilihan terakhir ketika akses server benar-benar tidak tersedia, pilih versi tanpa penundaan, lalu ganti dengan pengalihan 301 sisi server begitu memungkinkan.
TL;DR — sebuah meta refresh pengalihan adalah sebaris HTML — sebuah
Evidence for this claim Google supports instant and delayed meta refresh redirects but recommends server-side permanent redirects when possible. Scope: Google redirect processing and implementation preference. Confidence: high · Verified: Google Search Central: Redirects Evidence for this claim Timed redirects can create accessibility problems, particularly when users cannot control the time limit. Scope: WCAG timing guidance; not a search-ranking claim. Confidence: high · Verified: W3C WCAG: Timing Adjustable<meta http-equiv="refresh">tag — itu memerintahkan browser untuk berpindah ke URL lain setelah halaman memuat. ini adalah bukan sebuah HTTP kode status seperti 301. server Anda mengembalikan sebuah halaman biasa halaman pertama, lalu browser melakukan pengalihan. ini berfungsi, tetapi ini adalah lebih lambat dan merepotkan daripada sebuah nyata server-side pengalihan, karena itu gunakan ini hanya ketika Anda memiliki tidak lainnya pilihan.
Apa itu pengalihan meta refresh
sebagian besar pengalihan terjadi pada server. Anda meminta sebuah URL, dan sebelum Anda mendapatkan apa pun
sama sekali, server menjawab “halaman itu telah dipindahkan — buka alamat ini” (terjemahan) “itu moved — membuka di sini sebagai gantinya” (itu’s sebuah 301 atau sebuah
302). sebuah meta refresh bekerja dengan cara yang sama sekali berbeda. server mengirimkan sebuah
biasa, berfungsi halaman (sebuah 200 OK), dan di dalam HTML halaman tersebut adalah sebuah instruksi
yang memerintahkan browser membuka alamat lain:
<meta http-equiv="refresh" content="0;url=https://example.com/newlocation">tag tersebut berada di <head> dari halaman. angka sebelum semicolon adalah bagaimana
banyak detik untuk menunggu; url= bagian adalah tujuan pengiriman pengunjung. karena ini adalah
browser — bukan server — yang menjalankannya, ini disebut sebuah client-side
pengalihan.
instan vs. tertunda
Ada dua jenis, dan perbedaannya hanya terletak pada angka tersebut:
- instan —
content="0;url=...". browser berpindah segera setelah halaman selesai dimuat. ini adalah versi yang harus dipilih jika terpaksa menggunakan meta refresh sama sekali. Google memperlakukannya seperti sebuah permanen pengalihan (serupa untuk sebuah 301). - tertunda —
content="5;url=..."(apa pun angka lebih besar daripada 0). browser menampilkan halaman untuk beberapa detik, lalu berpindah. Google memperlakukannya sebagai sebuah sementara pengalihan, dan penundaan adalah hal itu dahulu mendapatkan meta refresh sebuah buruk, berbau spam reputasi.
Mengapa orang menyarankan untuk menghindarinya
sebuah meta refresh memang berfungsi — tetapi ini lebih lemah daripada sebuah server pengalihan karena browser baru menjalankan pengalihan instruksi setelah halaman adalah diperlakukan sebagai finished memuat — HTML standar’s sendiri pemicu kondisi — bukan sebelumnya. sebuah server-side pengalihan terjadi seketika, sebelum apa pun halaman memuat sama sekali. Google’s sendiri panduan peringkat server-side pengalihan pertama, meta refresh di middle, dan JavaScript pengalihan terakhir.
Jadi, aturan sederhananya: gunakan nyata 301 jika memungkinkan. Gunakan sebuah meta
refresh hanya ketika host benar-benar tidak memungkinkan Anda siapkan sebuah server pengalihan
(beberapa konfigurasi hosting statis) — dan meskipun demikian, gunakan instan (0) versi dan
beralih untuk sebuah semestinya 301 begitu Anda mampu melakukannya.
Ingin gambaran lengkap — rumusan persis Google, aksesibilitas aspek, dan bagaimana untuk mendeteksi ini di situs Anda? Beralihlah ke lanjutan tab.
TL;DR — sebuah meta refresh adalah sebuah HTML
Evidence for this claim Google supports instant and delayed meta refresh redirects but recommends server-side permanent redirects when possible. Scope: Google redirect processing and implementation preference. Confidence: high · Verified: Google Search Central: Redirects Evidence for this claim Timed redirects can create accessibility problems, particularly when users cannot control the time limit. Scope: WCAG timing guidance; not a search-ranking claim. Confidence: high · Verified: W3C WCAG: Timing Adjustable<meta http-equiv="refresh">tag (atau yang disisipkan serverRefreshheader), bukan sebuah3xxkode status — server mengembalikan200dan browser melakukan navigasi hanya setelah halaman memiliki selesai dimuat. instan (content="0") dibaca sebagai permanen untuk Google, seperti 301/308; tertunda (> 0) dibaca sebagai sementara. ini berada di antara server-side dan JavaScript pengalihan di Google’s keandalan urutan karena itu ketergantungan pada pemuatan halaman penuh. Mueller: ini “seharusnya just berfungsi,” (terjemahan) “seharusnya hanya berfungsi,” tetapi isn’t dianjurkan (back-button riwayat + mengurai-time cost). gunakan ini hanya ketika Anda genuinely tidak memiliki akses server, utamakan0, pasangkan ini denganrel=canonicaldan sebuah tautan cadangan yang terlihat, dan ganti ini dengan sebuah nyata 301 segera setelah Anda dapat.
Ini bukan kode status
Ini satu hal yang harus dipahami dengan benar. sebuah meta refresh adalah bukan sebuah HTTP 3xx
respons. server mengembalikan sebuah biasa 200 OK dengan sebuah halaman lengkap isi; berada
di itu halaman’s <head> adalah sebuah HTML arahan itu browser bertindak pada setelah
halaman memuat:
<!-- Instant: treated by Google as permanent -->
<meta http-equiv="refresh" content="0;url=https://example.com/newlocation">Ada padanan sisi server — Refresh header HTTP — yang mana melakukan yang sama
hal tetapi adalah disisipkan oleh server kode alih-alih berada di markup:
HTTP/1.1 200 OK
Refresh: 0; url=https://www.example.com/newlocationPerhatikan bahwa bahkan header versi mengembalikan 200, bukan sebuah 3xx. Dalam kedua cara tersebut, ini adalah sebuah
client-side pengalihan: browser performs navigasi, bukan server.
instan vs. tertunda — pembagian Google
Google membedakannya berdasarkan jumlah detik. Dalam
pengalihan dan Google Search
dokumentasi ini menyatakan bahwa ini “differentiates between two kinds of meta refresh redirects” (terjemahan) “differentiates antara dua jenis dari meta refresh pengalihan”:
- instan (
content="0") — “Triggers as soon as the page is loaded… Google Search interprets instantmeta refreshredirects as permanent redirects.” (terjemahan) “dipicu segera setelah halaman adalah dimuat… Google penelusuran menafsirkan instan meta refresh pengalihan sebagai permanen pengalihan.” karena itu untuk kanonisasi ini adalah dalam kelompok yang sama dengan sebuah 301/308: Google mengikuti ini dan menggunakan ini sebagai sebuah sinyal itu target seharusnya menjadi kanonis. - tertunda (
contentlebih besar daripada 0) — “Triggers only after an arbitrary number of seconds… Google Search interprets delayedmeta refreshredirects as temporary redirects.” (terjemahan) “dipicu hanya setelah sebuah sebarang angka dari detik… Google penelusuran menafsirkan tertunda meta refresh pengalihan sebagai sementara pengalihan.” seperti sebuah 302/303/307, target mungkin masih menjadi terindeks via lainnya sinyal, tetapi pengalihan sendiri isn’t dianggap sebagai sebuah permanen-perpindahan sinyal.
saya sendiri pengalihan urutan di Ahrefs panduan untuk 11 jenis dari redirects mencerminkan hal ini: untuk permanen perpindahan I peringkat them 308 / 301 → meta refresh 0 → JavaScript → crypto, dan tertunda meta refresh drops untuk sementara tier bersama 302/303/307.
Posisinya dalam urutan preferensi Google
Google’s pengalihan dokumentasi secara harfiah menerbitkan sebuah preferensi tabel, “ordered by how
likely Google is able to interpret [the redirect] correctly.” (terjemahan) “diurutkan oleh bagaimana
mungkin Google adalah mampu untuk interpret [ pengalihan] dengan benar.” untuk permanen
pengalihan urutan adalah: HTTP 301 → HTTP 308 → meta refresh (0 seconds) →
JavaScript location → crypto. Meta refresh adalah tingkat menengah — di bawah
server-side, di atas JavaScript.
Google menjelaskannya secara tegas tentang kedua batas. pada batas atas: “If server-side
redirects aren’t possible to implement on your platform, meta refresh redirects
may be a viable alternative.” (terjemahan) “jika server-side
pengalihan aren’t mungkin untuk menerapkan pada Anda platform, meta refresh pengalihan
dapat menjadi sebuah layak alternatif.” pada batas bawah: “Only use JavaScript
redirects if you can’t do server-side or meta refresh redirects.” (terjemahan) “hanya gunakan JavaScript
pengalihan jika Anda dapat’t melakukan server-side atau meta refresh pengalihan.” itu’s
seluruh urutan itu dalam dua kalimat — dan ini sesuai rumusan sudah di
pengalihan hub, yang mana mencatat itu JS
dan tertunda meta-refresh adalah lebih lemah karena mereka depend pada perenderan.
Dua urutan berbeda — jangan mencampuradukkannya
Ada perbedaan halus yang sering membingungkan pengembang. MDN menerbitkan sebuah
urutan berbeda
untuk pengalihan — tetapi ini adalah tentang urutan eksekusi browser ketika several pengalihan
mekanisme adalah dipasang pada satu halaman, bukan keandalan SEO. MDN’s urutan adalah: HTTP
pengalihan pertama, lalu JavaScript, lalu meta refresh terakhir — karena “the <meta>
redirect happens after the page is completely loaded, which is after all scripts
have executed.” (terjemahan) “ meta refresh
pengalihan terjadi setelah halaman adalah selesai dimuat, yang mana adalah setelah semua skrip
memiliki dijalankan.”
karena itu JavaScript “beats” (terjemahan) “beats” meta refresh di MDN’s waktu urutan, tetapi meta refresh “beats” (terjemahan) “beats” JavaScript di Google’s keandalan urutan. Keduanya benar — mereka jawaban berbeda pertanyaan. MDN adalah asking “which fires first in the browser?” (terjemahan) “yang mana dijalankan pertama di browser?” (synchronous JS berjalan selama muat, sebelum meta refresh’s post-muat pengatur waktu). Google adalah asking “which am I most likely to interpret correctly for search?” (terjemahan) “yang mana am I sebagian besar mungkin untuk interpret dengan benar untuk penelusuran?” (sebuah meta refresh adalah dibaca langsung dari diurai HTML; sebuah JS pengalihan perlu Google’s terpisah perenderan langkah untuk berhasil). Pisahkan kedua sudut pandang tersebut dan kontradiksi yang tampak disappears.
Mengapa ini bergantung pada pemuatan halaman — dan mengapa itu membuatnya lebih lemah
sebuah meta refresh dapat’t dijalankan until halaman memiliki selesai dimuat. Per MDN’s
<meta http-equiv>
reference, “the timer starts when the page is completely loaded, which is after
the load and pageshow events have both fired.” (terjemahan) “ pengatur waktu dimulai ketika halaman adalah selesai dimuat, yang mana adalah setelah
meta refresh dan meta refresh peristiwa memiliki keduanya fired.” itu’s benar bahkan untuk
content="0" — “instan” (terjemahan) “instan” berarti tanpa penundaan tambahan setelah muat, bukan zero
elapsed time. sebuah slow halaman delays bahkan sebuah 0-kedua refresh di sebuah cara sebuah server-side
3xx tidak pernah dapat, karena server mengirim pengalihan sebelum apa pun halaman memuat di
semua.
layak menjadi precise: sebuah meta refresh adalah bukan diproses di Google’s render (JS
eksekusi) stage cara sebuah window.location pengalihan adalah — ini adalah dibaca directly dari
diurai HTML <head>. -nya weakness isn’t perenderan pipeline; ini adalah
ketergantungan pada pemuatan halaman penuh (network completion, render-blocking resources) plus,
untuk tertunda variants, sebuah sebarang menunggu.
apa HTML standar sebenarnya specifies
HTML Standard’s declarative-refresh algoritme adalah lebih precise daripada “waits for the halaman to pemuatan,” (terjemahan) “waits untuk halaman untuk muat,” dan sebuah beberapa dari -nya detail penting untuk auditing dan troubleshooting:
- jatuh tempo time. refresh bebergantung jatuh tempo setelah document’s sepenuhnya-dimuat time
dan, untuk sebuah
<meta>element specifically, -nya penyisipan time — whichever adalah later — disesuaikan untuk pengguna preferensi. itu’s spec-tingkat versi dari “setelah the halaman loads” (terjemahan) “setelah halaman memuat”; persis yang mana network/render peristiwa count sebagai “dimuat” (terjemahan) “dimuat” di sebuah given browser adalah sebuah implementation detail, bukan sesuatu standar itemizes sebagai sebuah universal fetch-dan-paint sequence. - relatif URLs. refresh target adalah diurai relatif untuk document’s sendiri
URL, karena itu ketika Anda’re auditing satu, resolve absolute destination alih-alih
trusting literal
url=string — sebuah relatif path dapat poin tempat lain lainnya daripada ini looks seperti di sebuah glance. - pertama satu wins. setelah sebuah document adalah sudah marked untuk declaratively refresh,
algoritme ignores apa pun later refresh instruksi pada itu halaman. dua conflicting
<meta refresh>tags (atau sebuah tag plus sebuahRefreshheader) isn’t sebuah fallback plan — ini adalah sebuah authoring defect, dan hanya pertama satu takes effect. javascript:targets adalah rejected. jika diurai target menggunakanjavascript:scheme, algoritme mengembalikan tanpa navigating.- ini isn’t dijamin untuk dijalankan. standar explicitly allows navigasi untuk menjadi dibatalkan, disesuaikan oleh pengguna atau pengguna-agent preferensi, diblokir oleh sebuah sandboxed document’s otomatis-fitur restriction, exposed melalui browser’s sendiri UI, atau simply bukan performed. Don’t treat “ini’ll pengalihan” (terjemahan) “ini’ll pengalihan” sebagai sebuah absolute.
- riwayat penanganan. standar specifies ganti riwayat penanganan untuk refresh navigasi — meaning spec text memiliki browser ganti saat ini riwayat entry alih-alih tambahkan sebuah baru satu. itu’s layak flagging terhadap “mempertahankan the lama halaman in browser riwayat” (terjemahan) “mempertahankan halaman lama di browser riwayat” rumusan di bawah: ini adalah apa sebuah named Google spokesperson dilaporkan tentang dunia nyata perilaku di 2018, dan ini dapat masih hold di practice, tetapi ini isn’t apa saat ini spec text sendiri describes. Treat “meta refresh always leaves the source page in history” (terjemahan) «meta refresh selalu meninggalkan halaman sumber dalam riwayat» sebagai anggapan yang belum dikonfirmasi, bukan perilaku yang sudah pasti. alih-alih settled perilaku — verifying ini akan take browser/versi-spesifik testing, yang mana adalah di luar apa ini sources establish.
John Mueller put “mengapa bukan dianjurkan” (terjemahan) “mengapa bukan dianjurkan” case concisely (relayed oleh mesin pencari Roundtable, 2018): sebuah meta refresh “should just work,” (terjemahan) “seharusnya hanya berfungsi,” tetapi Google doesn’t recommend ini untuk dua alasan — UX (“it keeps the page in browser history, afaik” (terjemahan) «mekanisme ini mempertahankan halaman dalam riwayat browser, sejauh yang saya tahu»—sebuah pernyataan yang sengaja disampaikan dengan keraguan. dan processing time (Google memiliki untuk mengurai halaman untuk bahkan melihat pengalihan). “Once processed, it’s just like a redirect.” (terjemahan) “setelah diproses, ini adalah hanya seperti pengalihan.” itu’s sebuah lebih berguna explanation daripada usual “ini’s lama dan berbau spam,” (terjemahan) “ini adalah lama dan berbau spam,” karena ini names concrete, non-spam costs — bahkan jika riwayat half adalah sebuah dilaporkan pengamatan alih-alih sebuah didokumentasikan spec guarantee (melihat di atas).
mengapa ini adalah tidak dianjurkan — historical baggage
terpisah dari Mueller’s UX/mengurai-time alasan, meta refresh carries sebuah reputasi. di 2000s web-spam era ini adalah sebuah umum doorway-halaman vehicle: sebuah halaman peringkat untuk sebuah kueri, lalu near-instantly meta-refreshes pengunjung untuk sebuah berbeda, lebih sedikit relevant destination — showing mesin pencari dan pengguna effectively berbeda outbergantung. itu’s origin dari “berbau spam” (terjemahan) “berbau spam” label. ini adalah layak menjadi accurate di sini: tidak saat ini Google spam-policy halaman names “meta refresh” (terjemahan) “meta refresh” explicitly; policies define “sneaky pengalihan” (terjemahan) “sneaky pengalihan” dan “doorway” (terjemahan) “doorway” abuse sebagai umum categories itu meta refresh dahulu disajikan sebagai sebuah mekanisme untuk. Treat ini sebagai historical/industri context, bukan sebuah tegas saat ini policy citation.
There’s juga sebuah concrete, non-spam kegagalan modus Mueller ditandai di sebuah 2018 hangout (via mesin pencari Journal): sebuah situs itu meta-refreshed listing halaman untuk sebuah shared pembayaran halaman. “So if you do this across your pages there’s a big chance we’ll follow this redirect and think ‘Oh, this payment page is actually what you want to have indexed and not the actual content.’” (terjemahan) “karena itu jika Anda melakukan ini di seluruh Anda halaman there’s sebuah big peluang kami’ll ikuti ini pengalihan dan think ‘Oh, ini pembayaran halaman adalah sebenarnya apa Anda ingin memiliki terindeks dan bukan sebenarnya konten.’” Mass-refreshing banyak sumber halaman untuk satu generic destination dapat mendapatkan destination terindeks alih-alih Anda konten.
None dari itu membuat sebuah isolated, legitimate meta refresh sebuah penalty risk. Google’s sendiri saat ini dokumentasi panggil ini “a viable alternative” (terjemahan) “sebuah layak alternatif” ketika server-side pengalihan aren’t mungkin. risk adalah pola dan intent, bukan mekanisme.
Evidence for this claim Google says meta refresh can be a viable alternative when server-side redirects are not possible, while permanent server-side redirects are recommended whenever possible for a URL move. Scope: meta refresh and HTTP Refresh interpretation Confidence: high · Verified: Redirects and Google Searchaksesibilitas: yang sama instan-vs-tertunda pembagian
SEO rumusan memiliki sebuah hampir persis twin di aksesibilitas panduan — dengan satu
qualification layak menyatakan sejak awal: W3C’s WAI techniques
adalah, di mereka sendiri kata, contoh dari cara untuk memenuhi WCAG keberhasilan kriteria, bukan
wajib kepatuhan aturan. Meeting atau missing sebuah spesifik teknik isn’t sendiri
sebuah otomatis lulus atau gagal; sebenarnya requirement adalah keberhasilan kriteria (di sini,
2.2.1 waktu Adjustable). dengan itu menyatakan, W3C’s sendiri preferensi sesuai SEO
panduan di atas: ini recommends sebuah server-side pengalihan pertama, dan di mana sebuah
client-side pengalihan adalah genuinely necessary, -nya memadai teknik (H76,
G110) panggil untuk tidak penundaan (content="0") dan sebuah sumber halaman whose konten adalah
limited untuk pengalihan-related informasi plus sebuah terlihat tautan untuk destination.
itu’s sebuah narrower bar daripada “apa pun 0-detik refresh secara otomatis lulus” (terjemahan) “apa pun 0-kedua refresh secara otomatis lulus” — ini adalah
“zero penundaan, pengalihan-hanya konten, dan a fallback link” (terjemahan) “zero penundaan, pengalihan-hanya konten, dan sebuah fallback tautan” sebagai didokumentasikan
memadai pola. sebuah tertunda meta refresh dengan tidak cara untuk pause, extend, atau
disable ini risks failing 2.2.1, karena ini dapat melakukan navigasi away sebelum sebuah
screen-reader pengguna atau seseorang dengan rendah vision memiliki selesai membaca — tetapi apakah sebuah
spesifik tertunda refresh sebenarnya fails kriteria adalah sebuah case-oleh-case WCAG
evaluation, bukan sesuatu sebuah teknik angka alone settles. MDN’s
aksesibilitas note
describes yang sama underlying risk: too-pendek refresh intervals berarti orang menggunakan
assistive tech “may be unable to read through and understand the page’s content
before being secara otomatis redirected.” (terjemahan) “dapat menjadi unable untuk dibaca melalui dan memahami halaman’s konten
sebelum menjadi secara otomatis redirected.”
karena itu keduanya sebuah mesin pencari dan sebuah standards isi land pada yang sama aturan: instan adalah
baik, tertunda adalah risky. itu’s sebuah baik bit dari reinforcement — dan satu lebih alasan
untuk utamakan content="0" jika Anda gunakan meta refresh sama sekali.
ketika ini adalah sebuah legitimate pilihan terakhir
gunakan meta refresh hanya ketika Anda genuinely dapat’t melakukan sebuah server-side pengalihan. nyata cases di mana itu terjadi:
- statis hosts dengan tidak server config — e.g. GitHub halaman, di mana Anda dapat’t tambahkan
.htaccess/nginx aturan. - statis-situs generators whose “aliases” (terjemahan) “aliases” fitur outputs meta refresh, bukan 301s.
Hugo adalah sebuah known contoh — -nya
aliases:front-penting generates little meta-refresh HTML files, bukan nyata server pengalihan. (lebih pada itu di Hugo SEO.) - tidak-kode / situs web-builder exports dan beberapa doc generators itu hanya let Anda emit statis HTML.
jika Anda’re stuck dengan ini, melakukan ini well:
- utamakan instan (
content="0") di atas apa pun penundaan — permanen sinyal, dan ini clears aksesibilitas bar. - Pair ini dengan
rel="canonical"pointing di destination, karena itu kanonisasi intent adalah tegas bahkan sebelum Google processes refresh. - sertakan sebuah terlihat, clickable fallback tautan di isi untuk rare browser atau assistive-tech setting di mana auto-refresh adalah disabled.
- Don’t stack ini ke sebuah rantai pengalihan — jika meta-refresh halaman’s URL later juga mendapatkan sebuah server-side pengalihan layered pada, Anda’ve dibangun sebuah chain (melihat rantai pengalihan).
- ganti ini dengan sebuah nyata 301 moment Anda memiliki akses server. Meta refresh adalah sebuah bridge, bukan sebuah destination.
Detecting meta refresh di situs Anda
perayap surface ini, biasanya sebagai sebuah rendah-untuk-medium severity flag alih-alih sebuah
critical error — Screaming Frog, Sitebulb, Ahrefs situs audit, dan Semrush semua
report them. untuk sebuah isolated handful dari URLs ini adalah sebuah “fix ketika convenient” (terjemahan) “fix ketika convenient” item, bukan
sebuah emergency; situs-wide gunakan pada penting halaman adalah di mana ini bebergantung layak
prioritizing. untuk periksa sebuah single URL oleh hand, view sumber atau curl halaman dan
cari http-equiv="refresh" di <head> (ada ready snippets di
skrip bagian).
menjadi careful dengan claims di either direction pada ekuitas tautan. Ahrefs help-center baris itu meta refresh “does not pass much or any link juice” (terjemahan) “melakukan bukan lulus much atau apa pun tautan juice” adalah layak questioning — Google’s pengalihan tabel classifies sebuah instan meta refresh di sama permanen-pengalihan interpretation bucket sebagai sebuah 301, yang mana adalah sebuah sinyal tentang bagaimana Google dibaca dan canonicalizes pengalihan, bukan sebuah stated promise tentang identical PageRank, tautan-equity, atau peringkat transfer. Neither Google’s pengalihan dokumentasi nor HTML standar membuat sebuah tegas klaim tentang equity parity antara sebuah meta refresh dan sebuah 301 — karena itu treat “ini lulus the sama nilai sebagai a 301” (terjemahan) “ini lulus yang sama nilai sebagai sebuah 301” dan “ini lulus little atau none” (terjemahan) “ini lulus little atau none” sebagai equally unverified beyond apa’s sebenarnya didokumentasikan: Google classifies ini sebagai permanen, dan processes ini setelah ini memuat halaman.
sebuah meta-refresh sumber halaman masih memiliki -nya sendiri respons HTTP dan -nya sendiri HTML
document — auditing satu shouldn’t stop di reading refresh tag. periksa, di urutan:
sumber URL’s HTTP status dan respons headers (including sebuah mungkin Refresh
header); raw HTML versus apa sebuah browser sebenarnya parses; yang mana refresh
arahan adalah pertama (dan therefore efektif) satu, dan -nya resolved absolute
target; bagaimana Google’s pengalihan tabel akan mengklasifikasikan ini (instan/permanen vs.
tertunda/sementara); sumber halaman’s sendiri tag kanonis, robots directives, dan
keterindeksan; akhir destination’s respons; apakah pengalihan adalah
cancelable, controllable, atau skipped oleh pengguna/browser preferensi; cache dan riwayat
perilaku di spesifik named browser dan versi Anda’re testing (bukan sebagai sebuah
universal klaim); tautan internal masih pointing di sumber; dan, terakhir, Anda plan
untuk ganti ini dengan sebuah server-side pengalihan. Checklists dan skrip lenses pada
ini halaman break ini ke concrete langkah dan commands.
AI summary
sebuah condensed take pada lanjutan versi:
- bukan sebuah kode status. sebuah meta refresh adalah sebuah HTML
<meta http-equiv="refresh">tag (atauRefreshheader HTTP). server mengembalikan200; browser melakukan navigasi setelah halaman sepenuhnya memuat. ini adalah sebuah client-side pengalihan. - instan vs. tertunda.
content="0"= Google memperlakukannya sebagai permanen (seperti sebuah 301/308).content > 0= sementara (seperti 302/303/307), dan penundaan adalah trait tied untuk lama doorway-halaman spam. - Middle dari Google’s urutan. server-side → meta refresh → JavaScript → crypto. Google: “If server-side redirects aren’t possible… meta refresh… may be a viable alternative,” (terjemahan) “jika server-side pengalihan aren’t mungkin… meta refresh… dapat menjadi sebuah layak alternatif,” dan “Only use JavaScript redirects if you can’t do server-side or meta refresh redirects.” (terjemahan) “hanya gunakan JavaScript pengalihan jika Anda dapat’t melakukan server-side atau meta refresh pengalihan.”
- Dua “orders.” (terjemahan) “orders.” MDN’s eksekusi urutan puts JS sebelum meta refresh (meta refresh dijalankan post-muat, setelah skrip). Google’s keandalan urutan puts meta refresh di atas JS. keduanya benar — berbeda pertanyaan.
- mengapa lebih lemah: HTML standar’s jatuh tempo-time algoritme holds ini until halaman adalah
dimuat — benar bahkan untuk
0— dan navigasi dapat menjadi dibatalkan atau skipped oleh pengguna/browser preferensi; ini adalah bukan sebuah 100% guarantee. Mueller: ini “should just work” (terjemahan) “seharusnya hanya berfungsi” tetapi isn’t dianjurkan (browser riwayat “afaik” (terjemahan) “afaik” + biaya penguraian halaman) — riwayat poin adalah miliknya dilaporkan pengamatan, bukan sesuatu saat ini spec text sendiri menyatakan ( standar specifies ganti riwayat penanganan). - ekuitas tautan: unverified either cara. Google’s tabel groups instan meta refresh dengan 301s untuk interpretation, bukan sebuah didokumentasikan PageRank/equity-parity promise — don’t di atas-klaim di either direction.
- aksesibilitas mirrors SEO, dengan sebuah caveat: W3C prefers server-side pengalihan too; -nya memadai teknik (H76/G110) panggil untuk zero penundaan + pengalihan-hanya konten + sebuah fallback tautan — tetapi ini adalah contoh teknik, bukan wajib kepatuhan aturan. sebuah tertunda refresh dengan tidak pengguna control risks failing 2.2.1 waktu Adjustable; apakah ini sebenarnya melakukan adalah sebuah case-oleh-case evaluation.
- gunakan hanya sebagai sebuah pilihan terakhir (GitHub halaman, Hugo
aliases, statis/tidak-kode hosts). utamakan0, tambahkanrel=canonical+ sebuah tautan cadangan yang terlihat, hindari chains, dan ganti di sebuah nyata 301 segera setelah Anda dapat.
Official dokumentasi
Primary-sumber dokumentasi pada meta refresh dan di mana ini fits.
- pengalihan dan Google Search — pengalihan-preferensi tabel, instan-vs-tertunda definition, dan “layak alternatif” (terjemahan) “layak alternatif” rumusan.
- Spam policies untuk Google web search — defines “sneaky pengalihan” (terjemahan) “sneaky pengalihan” dan “doorway” (terjemahan) “doorway” abuse sebagai umum categories (note: melakukan bukan name meta refresh explicitly).
MDN
<meta http-equiv>— client-side mechanics: pengatur waktu “starts when the page is completely loaded.” (terjemahan) “dimulai ketika halaman adalah selesai dimuat.”Refreshheader HTTP — yang disisipkan server equivalent.- Redirections di HTTP — browser eksekusi urutan dari precedence (distinct dari Google’s SEO urutan).
W3C / WCAG
- H76: menggunakan meta refresh untuk buat sebuah instan client-side redirect — server-side diutamakan; di mana itu’s bukan mungkin, 0-kedua, pengalihan-hanya-konten pola sebagai sebuah memadai teknik (bukan sebuah wajib aturan).
- G110: menggunakan sebuah instan client-side redirect — umum (non-HTML-spesifik) versi dari yang sama teknik.
- F41: kegagalan karena menggunakan meta refresh dengan sebuah time-out — bagaimana sebuah uncontrolled tertunda refresh dapat gagal 2.2.1 waktu Adjustable; sebuah teknik/kegagalan halaman, bukan sendiri kepatuhan requirement.
Kutipan dari sumber
Pernyataan yang tercatat secara langsung. Setiap tautan menuju bagian sumber yang dikutip.
Google — dokumentasi Redirects and Google Search
- “The following table explains the various ways you can use to set up permanent and temporary redirects, ordered by how likely Google is able to interpret correctly (for example, a server side redirect has the highest chance of being interpreted correctly by Google).” (terjemahan) «Tabel berikut menjelaskan berbagai cara menyiapkan pengalihan permanen dan sementara, yang diurutkan berdasarkan kemungkinan Google menafsirkannya dengan benar.» Buka kutipan
- “If server-side redirects aren’t possible to implement on your platform, meta refresh redirects may be a viable alternative.” (terjemahan) «Jika pengalihan sisi server tidak dapat diterapkan pada platform Anda, pengalihan meta refresh dapat menjadi alternatif yang layak.» Buka kutipan
- “Google differentiates between two kinds of meta refresh redirects: Instant meta refresh redirect: Triggers as soon as the page is loaded in a browser. Google Search interprets instant meta refresh redirects as permanent redirects. Delayed meta refresh redirect: Triggers only after an arbitrary number of seconds set by the site owner. Google Search interprets delayed meta refresh redirects as temporary redirects.” (terjemahan) «Google membedakan pengalihan meta refresh instan, yang ditafsirkan sebagai permanen, dari pengalihan tertunda, yang ditafsirkan sebagai sementara.» Buka kutipan
- “Place the meta refresh redirect either in the <head> element in the HTML or in the HTTP header with server-side code.” (terjemahan) «Tempatkan pengalihan meta refresh di elemen <head> HTML atau di header HTTP melalui kode sisi server.» Buka kutipan
- “Only use JavaScript redirects if you can’t do server-side or meta refresh redirects.” (terjemahan) «Gunakan pengalihan JavaScript hanya jika pengalihan sisi server atau meta refresh tidak dapat dilakukan.» Buka kutipan
- “While Google attempts to render every URL Googlebot crawled, rendering may fail for various reasons. This means that if you set a JavaScript redirect, Google might never see it if rendering of the content failed.” (terjemahan) «Walaupun Google berupaya merender setiap URL yang dirayapi Googlebot, perenderan dapat gagal; akibatnya, pengalihan JavaScript mungkin tidak terlihat jika perenderan konten gagal.» Buka kutipan
John Mueller, Google (tweet yang dikutip Search Engine Roundtable, 2 Maret 2018)
- “A meta refresh type redirect should just work. We don’t recommend it for 2 reasons: UX (it keeps the page in browser history, afaik) & processing time (we need to parse the page to see it). Once processed, it’s just like a redirect.” (terjemahan) «Pengalihan meta refresh seharusnya berfungsi, tetapi tidak dianjurkan karena pengalaman pengguna dan waktu pemrosesan; setelah diproses, mekanisme ini bekerja seperti pengalihan.» Buka kutipan
John Mueller, Google (hangout Webmaster Central, Juli 2018, dikutip Search Engine Journal)
- “So if you do this across your pages there’s a big chance we’ll follow this redirect and think ‘Oh, this payment page is actually what you want to have indexed and not the actual content,’ and in that case we won’t have the content indexed.” (terjemahan) «Jika ini diterapkan di banyak halaman, Google dapat mengikuti pengalihan dan mengira halaman pembayaranlah yang ingin diindeks, bukan konten sebenarnya.» Buka kutipan
MDN
- “The timer starts when the page is completely loaded, which is after the load and pageshow events have both fired.” (terjemahan) «Pengatur waktu dimulai setelah halaman selesai dimuat, yaitu setelah peristiwa load dan pageshow dijalankan.» Baca dokumentasi
- “When possible, use HTTP redirects and don’t add <meta> element redirects.” (terjemahan) «Jika memungkinkan, gunakan pengalihan HTTP dan jangan tambahkan pengalihan melalui elemen <meta>.» Baca dokumentasi
yang mana pengalihan seharusnya I gunakan?
Meta refresh adalah sebuah fallback, bukan sebuah pertama choice. berfungsi down dari strongest pilihan Anda dapat sebenarnya menerapkan.
Choosing a redirect when meta refresh is on the table
Meta refresh myths dan mistakes
umum misconceptions, dan apa’s sebenarnya benar.
“Meta refresh is an HTTP redirect / a 3xx status code.” (terjemahan) “Meta refresh adalah sebuah HTTP pengalihan / sebuah 3xx kode status.”
tidak. ini adalah sebuah HTML tag (atau Refresh header HTTP) itu browser bertindak pada setelah
sebuah halaman biasa 200 respons dan sebuah lengkap pemuatan halaman — bukan sebuah kode status server mengirim
sebelum apa pun konten.
“A 0-second meta refresh fires instantly, before the page even loads.” (terjemahan) “sebuah 0-kedua meta refresh dijalankan instantly, sebelum halaman bahkan memuat.”
tidak. Per MDN, pengatur waktu “starts when the page is completely loaded.” (terjemahan) “dimulai ketika halaman adalah selesai dimuat.” content="0"
berarti zero additional penundaan setelah muat, bukan berarti waktu berlalu nol. itu’s persis mengapa
Mueller cites “processing time (we need to mengurai the halaman to melihat ini)” (terjemahan) “processing time (kami perlu untuk mengurai halaman untuk melihat ini)” bahkan untuk
instan variant.
“Meta refresh is basically the same as a JavaScript redirect.” (terjemahan) “Meta refresh adalah basically yang sama sebagai sebuah JavaScript pengalihan.” bukan quite. keduanya adalah client-side, tetapi sebuah meta refresh adalah declared di HTML dan dibaca langsung dari diurai document, sementara sebuah JS pengalihan perlu skrip eksekusi. Google peringkat meta refresh di atas JS untuk keandalan; urutan MDN eksekusi browser peringkat synchronous JS sebelum meta refresh. keduanya adalah benar — mereka jawaban berbeda pertanyaan.
“Meta refresh doesn’t pass any link equity / PageRank.” (terjemahan) “Meta refresh doesn’t lulus apa pun ekuitas tautan / PageRank.” Unsupported sebagai stated — tetapi karena itu adalah opposite klaim. Google’s pengalihan tabel puts sebuah instan meta refresh di yang sama permanen-pengalihan interpretation bucket sebagai sebuah 301/308, yang mana adalah tentang bagaimana Google classifies dan canonicalizes sinyal. Neither Google’s dokumentasi nor HTML standar membuat sebuah tegas pernyataan tentang PageRank, tautan-equity, atau peringkat parity antara dua mekanisme — karena itu don’t assert equivalence either cara beyond didokumentasikan classification.
“Meta refresh is always spammy and will get my site penalized.” (terjemahan) “Meta refresh adalah selalu berbau spam dan akan mendapatkan saya situs penalized.” salah sebagai sebuah blanket klaim. ini memiliki sebuah historical doorway-spam association, tetapi sebuah single legitimate gunakan — e.g. pada sebuah statis host dengan tidak akses server — adalah bukan sebuah spam sinyal. Google’s saat ini dokumentasi panggil ini “a viable alternative.” (terjemahan) “sebuah layak alternatif.” risk adalah pola dan intent (cloaking, mass-redirecting untuk unrelated konten), bukan mekanisme.
“A few seconds’ delay is a baik UX courtesy, not a real problem.” (terjemahan) “beberapa detik’ penundaan adalah sebuah baik UX courtesy, bukan sebuah nyata masalah.” Mixed. apa pun penundaan lebih besar daripada 0 downgrades ini untuk Google’s sementara treatment, dan W3C’s aksesibilitas teknik treat sebuah uncontrollable penundaan sebagai pola untuk hindari — tetapi sebuah missed teknik isn’t secara otomatis sebuah WCAG violation pada -nya sendiri; ini masih bergantung down untuk apakah sebenarnya keberhasilan kriteria (2.2.1, waktu Adjustable) adalah met. “A beberapa detik to let the pengguna dibaca a message” (terjemahan) “beberapa detik untuk let pengguna dibaca sebuah message” dengan tidak cara untuk pause, extend, atau skip ini adalah persis pola itu risks failing ini.
“My crawler flagged ‘meta refresh tag’ — it’s a critical issue to fix now.” (terjemahan) “saya perayap ditandai ‘meta refresh tag’ — ini adalah sebuah critical masalah untuk fix now.” Overstated untuk isolated cases. alat seperti Screaming Frog mengklasifikasikan ini sebagai sebuah rendah-severity warning. layak replacing dengan sebuah nyata 301 ketika Anda mendapatkan akses server, tetapi bukan yang sama urgency tier sebagai broken pengalihan, loops, atau missing pengindeksan sinyal — unless ini adalah situs-wide atau pada tinggi-nilai halaman.
jika Anda memiliki untuk ship sebuah meta refresh — checklist
gunakan ini hanya setelah confirming sebuah server-side pengalihan genuinely isn’t available:
- Confirmed there’s tidak server-side pengalihan pilihan (diperiksa hosting
pengaturan,
.htaccess/nginx access, CDN aturan, framework config). - digunakan instan form —
content="0"— bukan sebuah tertunda satu. - tag adalah di
<head>, danurl=nilai adalah akhir destination (bukan lainnya pengalihan — hindari membangun sebuah chain). - ditambahkan sebuah
rel="canonical"pointing di destination URL. - disertakan sebuah terlihat, clickable fallback tautan di isi untuk anyone whose browser/assistive-tech setting disables auto-refresh.
- Destination mengembalikan sebuah clean
200(bukan sendiri sebuah 404, pengalihan, atau error). - Logged sebuah ikuti-up untuk ganti ini dengan sebuah nyata 301 setelah akses server adalah available.
Auditing meta refresh di seluruh sebuah situs
- Ran sebuah perayapan (Screaming Frog / Sitebulb / Ahrefs situs audit / Semrush) dan exported semua URLs ditandai sebagai meta-refresh pengalihan.
- untuk setiap ditandai URL, diperiksa HTTP status dan respons headers
(including sebuah mungkin
Refreshheader) — bukan hanya HTML. - Identified pertama (efektif) refresh arahan jika lebih daripada satu adalah
present, dan resolved -nya
url=target untuk sebuah absolute URL. - Classified ini instan vs. tertunda untuk predict Google’s permanen/sementara treatment, dan separately diperiksa sumber halaman’s sendiri tag kanonis, robots directives, dan keterindeksan.
- diperiksa apakah ini adalah isolated (rendah priority) atau situs-wide / pada tinggi-nilai halaman (prioritize).
- Looked untuk pembayaran-halaman pola — banyak sumber halaman refreshing untuk satu generic destination itu dapat mendapatkan terindeks alih-alih Anda konten.
- ditandai apa pun tertunda refreshes sebagai keduanya sebuah SEO dan sebuah aksesibilitas masalah.
Meta refresh — cheat sheet
** dua variants**
| Variant | Syntax | Google memperlakukannya sebagai | aksesibilitas |
|---|---|---|---|
| instan | content="0;url=..." | permanen (seperti 301/308) | memadai teknik (H76/G110) |
| tertunda | content="5;url=..." (apa pun > 0) | sementara (seperti 302/303/307) | Risks failing 2.2.1 (F41 pola) |
Google’s pengalihan preferensi (permanen), strongest → weakest
| peringkat | metode | mencatat |
|---|---|---|
| 1 | 301 / 308 (server-side) | Best — dijalankan sebelum apa pun halaman memuat |
| 2 | Meta refresh 0 | dibaca sebagai permanen, tetapi clumsy/slow (perlu lengkap muat) |
| 3 | JavaScript location | perlu perenderan; dapat tidak pernah menjadi seen jika render fails |
| 4 | Crypto pengalihan | benar pilihan terakhir; bukan semua bot mendukung ini |
dua orderings, don’t conflate
| pertanyaan | urutan |
|---|---|
| Google — keandalan SEO | server-side → meta refresh → JavaScript → crypto |
| MDN — browser eksekusi waktu | HTTP → JavaScript → meta refresh |
Fast facts
- bukan sebuah kode status — server mengembalikan
200, browser melakukan navigasi setelah lengkap muat. Refresh:header HTTP adalah yang disisipkan server equivalent (masih200).- “instan” (terjemahan) “instan” = zero penundaan setelah muat, bukan berarti waktu berlalu nol.
- Mueller’s dua “bukan dianjurkan” (terjemahan) “bukan dianjurkan” alasan: browser riwayat (miliknya dilaporkan “afaik” (terjemahan) “afaik”)
- biaya penguraian halaman. standar sendiri specifies ganti riwayat penanganan.
- ekuitas tautan/PageRank parity dengan sebuah 301: undocumented either cara — don’t assert ini.
- perayap flag ini rendah-untuk-medium severity, bukan critical.
- gunakan hanya dengan tidak akses server (GitHub halaman, Hugo
aliases, statis/tidak-kode).
Detecting dan reading meta refresh tags
periksa satu URL dari command baris
# Fetch the page and look for the meta refresh tag in the HTML
curl -s https://example.com/old-page/ | grep -i 'http-equiv=["'"'"']*refresh'
# Also check for the server-side Refresh header (case-insensitive)
curl -sI https://example.com/old-page/ | grep -i '^refresh:'sebuah meta-refresh halaman mengembalikan 200 (bukan sebuah 3xx), karena itu sebuah plain curl -I itu hanya
looks di kode status akan miss ini — Anda memiliki untuk inspect isi dan Refresh
header specifically.
Extract destination dengan sebuah regex
content attribute packs penundaan dan URL together sebagai N;url=.... ini pulls
out keduanya:
curl -s https://example.com/old-page/ \
| grep -io 'content=["'"'"']*[0-9]\+; *url=[^"'"'"'>]*'
# → content="0;url=https://example.com/newlocation"jika leading angka adalah 0 ini adalah instan (permanen untuk Google); apa pun lebih besar
daripada 0 adalah tertunda (sementara).
XPath (untuk sebuah rendered DOM atau sebuah XML/HTML parser)
//meta[translate(@http-equiv,'REFSH','refsh')='refresh']/@contenttranslate() normalizes attribute untuk lowercase karena itu ini sesuai
Refresh, REFRESH, atau refresh.
Chrome DevTools console — inspect saat ini halaman
// Is there a meta refresh on this page, and where does it point?
const m = document.querySelector('meta[http-equiv="refresh" i]');
console.log(m ? m.getAttribute('content') : 'no meta refresh');Bookmarklet — flag meta refresh pada apa pun halaman Anda’re viewing
javascript:(()=>{const m=document.querySelector('meta[http-equiv="refresh" i]');alert(m?('Meta refresh: '+m.getAttribute('content')):'No meta refresh tag on this page');})();Save itu sebagai sebuah bookmark; clicking ini pada apa pun halaman memerintahkan Anda apakah sebuah meta refresh adalah
present dan -nya content nilai — handy untuk spot-memeriksa sebuah URL sebelum refresh
whisks Anda away.
dua orders, dua berbeda pertanyaan
Meta refresh appears di dua pengalihan orderings itu look contradictory until Anda name axis menjadi diukur.
| urutan | pertanyaan | Sequence | apa ini berarti |
|---|---|---|---|
| browser eksekusi | yang mana mekanisme dijalankan pertama ketika several exist? | HTTP pengalihan → JavaScript → meta refresh | Meta refresh waits until halaman memuat; synchronous JavaScript dapat run pertama |
| Google keandalan | yang mana mekanisme adalah Google sebagian besar mungkin untuk interpret dengan benar? | server-side 301/308 → instan meta refresh → JavaScript | diurai HTML adalah lebih dependable daripada sebuah pengalihan itu memerlukan successful JavaScript perenderan |
gunakan framework di three langkah:
- Identify pertanyaan. Debugging apa browser melakukan adalah sebuah eksekusi-urutan masalah. Choosing sebuah SEO migration mekanisme adalah sebuah keandalan-urutan masalah.
- melakukan bukan convert waktu ke endorsement. JavaScript firing sebelum meta refresh melakukan bukan membuat ini Google’s diutamakan pengalihan metode.
- Choose strongest available layer. sebuah nyata server-side permanen pengalihan remains
default. jika akses server adalah genuinely unavailable, gunakan instan (
0kedua) meta refresh dengan sebuah kanonis dan tautan cadangan yang terlihat, lalu ganti ini ketika server control bebergantung available.
yang sama separation menjelaskan mengapa sebuah “instan” (terjemahan) “instan” meta refresh adalah bukan network-instan: ini menambahkan zero penundaan hanya setelah document memuat, sementara sebuah server pengalihan arrives sebelum document isi.
uji yourself: meta refresh pengalihan
Five quick pertanyaan pada bagaimana meta refresh berfungsi dan di mana ini fits. Pick sebuah jawaban untuk setiap, lalu periksa.
Resources layak Anda time
saya related writing
- 11 jenis dari pengalihan & mereka SEO Impact (Ahrefs, dengan Joshua Hardwick) — saya lengkap pengalihan ladder, including di mana meta refresh 0 berada di antara server-side dan JavaScript.
- JavaScript SEO Issues & Best Practices (Ahrefs) — perenderan side, dan mengapa JS pengalihan sit di bawah meta refresh di keandalan.
- apa adalah ‘meta refresh pengalihan’ dan mengapa adalah ini considered sebuah critical masalah? (Ahrefs Help Center) — situs audit rumusan untuk perayapan-flag audience (note: baris “doesn’t pass link juice” (terjemahan) «tidak meneruskan ekuitas tautan» tidak didukung oleh dokumentasi Google; lihat bagian lanjutan untuk alasan menghindari klaim mutlak ke arah mana pun.
saya speaking
- bagaimana penelusuran berfungsi (SlideShare) — saya walkthrough dari crawling, perenderan, pengindeksan, dan peringkat, pipeline sebuah client-side pengalihan memiliki untuk survive. (Standing disclaimer: “ini adalah saya understanding of systems… bukan going to menjadi 100% complete atau accurate.” (terjemahan) “ini adalah saya understanding dari sistem… bukan going untuk menjadi 100% complete atau accurate.”)
dari sekitar industri
- pengalihan dan Google Search (Google penelusuran Central) — primary sumber untuk instan/tertunda pembagian dan preferensi urutan.
- Google menyatakan Meta refresh pengalihan berfungsi baik tetapi bukan Recommended (mesin pencari Roundtable) — Barry Schwartz relaying Mueller’s “seharusnya just berfungsi” (terjemahan) “seharusnya hanya berfungsi” tweet dan miliknya dua alasan terhadap ini.
- Google Warns menggunakan Meta refresh dapat Lead untuk salah konten Getting terindeks (mesin pencari Journal) — “pembayaran halaman mendapatkan indexed sebagai gantinya of Anda konten” (terjemahan) “pembayaran halaman mendapatkan terindeks alih-alih Anda konten” kegagalan modus.
- Redirections di HTTP (MDN) — urutan eksekusi browser dari precedence (distinct dari Google’s SEO urutan).
- pengalihan menggunakan sebuah Meta refresh (Sitebulb) — audit-alat workflow untuk finding dan triaging them.
- Internal Redirection (Meta refresh) (Screaming Frog) — bagaimana perayap flags ini, dan di apa severity.
- pengalihan sebuah GitHub halaman situs dengan ini HTTP hack (Opensource.com) — sebuah dunia nyata “tidak akses server” (terjemahan) “tidak akses server” meta-refresh contoh pada sebuah statis host.
Log perubahan
Diperbarui 21 Agu 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.
Diperbarui 18 Jul 2026.
Ringkasan editorial dan detail perubahan yang tercatat.Detail perubahan
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
-
Catatan perubahan terperinci saat ini tersedia dalam bahasa Inggris.
Perbandingan lengkap tidak tersedia — tidak ada cuplikan sebelumnya yang diarsipkan untuk revisi ini.