Chuyển hướng Chains

Điều gì một chuỗi chuyển hướng là (MỘT → B → C thay vì MỘT → C), vì sao they happen sau stacked migrations, cách nhiều hops Google thực ra follows (10 ceiling, ~5 theo crawl attempt, ≤3–5 được khuyến nghị), cách tìm them với curl và crawl tools, và đó một-line cách sửa.

Xuất bản lần đầu: 2 thg 7, 2026 · Cập nhật lần cuối: 8 thg 8, 2026 · Advanced
Ngôn ngữ
1 tín hiệu bằng chứng trên trang này

MỘT chuỗi chuyển hướng là khi một URL không go straight để của nó cuối đích nhưng truyền qua một hoặc hơn intermediate các chuyển hướng đầu tiên — MỘT → B → C thay vì MỘT → C, ending tại đó đầu tiên non-chuyển hướng phản hồi (không nhất thiết một 200). Mỗi extra hop adds latency và có thể delay cách quickly Google fully consolidates các tín hiệu on đó đích. Đó numbers mọi người quote không contradictory: 10 hops là đó kỹ thuật ceiling Googlebot sẽ follow, và không hơn 3/ít hơn 5 là Google practical khuyến nghị — cả hai từ Google hiện tại tài liệu. John Mueller riêng described khoảng five hops theo crawl trong 2014 và theo crawl attempt trong 2020; trong 2014 he cũng đã nói một sau đó crawl có thể continue đó remainder. Những là dated representative statements, không một hiện tại scheduling bảo đảm. My observation đó Google thường resumes lâu hơn chains, và my khoảng five-hop triage ngưỡng, là independent practitioner evidence. Chains là gần như luôn đó residue of stacked migrations, không incompetence. Đó cost là crawl latency, không theo-hop PageRank mất mát. Đó cách sửa không bao giờ thay đổi: point mỗi chuyển hướng trực tiếp tại đó cuối trực tiếp đích và cập nhật liên kết nội bộ, canonicals, và sitemaps đó vẫn point vào đó chain.

TL;DR — MỘT chuỗi chuyển hướng là MỘT → B → C thay vì một trực tiếp MỘT → C, nơi mỗi hop là một chuyển hướng, ending tại đó đầu tiên non-chuyển hướng phản hồi — không nhất thiết một 200. họ là đó near-inevitable residue of stacked migrations, plugin conflicts, và unordered rules — không incompetence. Đó three hop numbers mọi người quotes mô tả khác nhau điều và không contradict: 10 là đó kỹ thuật ceiling Googlebot sẽ follow (hiện tại tài liệu), và ≤3, ít hơn 5 là Google hiện tại practical khuyến nghị. Mueller riêng described ~5 theo crawl trong 2014 và ~5 theo crawl attempt trong 2020; trong 2014 he cũng described một sau đó crawl continuing đó remainder. Những là dated representative statements, không một hiện tại scheduling bảo đảm. My observation đó Google thường resumes lâu hơn chains là tách biệt practitioner evidence. Đó được ghi lại cost là latency và crawl processing, không theo-hop PageRank mất mát — một single chuyển hướng vĩnh viễn không lose PageRank. Đó cách sửa là invariant: repoint mỗi chuyển hướng straight tại đó cuối trực tiếp đích, thì cách sửa đó liên kết nội bộ, canonicals, và sitemaps đó vẫn feed đó chain.

Điều gì được tính as một chain (và điều gì không)

Mỗi 3xx hop là một tách biệt HTTP exchange. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: RFC 9110: Redirection Không universal xếp hạng-mất mát percentage hoặc fixed crawl limit là được ghi lại, so một trực tiếp hop là đó defensible đích. Evidence for this claim Primary standard or official documentation supporting the adjacent article claim. Scope: Protocol semantics and Search behavior are kept separate; no indexing, ranking, or migration-timing guarantee is inferred. Confidence: high · Verified: Google: Redirects and Search

MỘT chuỗi chuyển hướng là hai hoặc hơn consecutive chuyển hướng các phản hồi trước đó đầu tiên non-chuyển hướng phản hồi — MỘT → B → C thay vì MỘT → C. Mỗi chuyển hướng trong đó sequence là một hop. Đó chain ends tại whatever phản hồi không itself một chuyển hướng: đó là thường một hoạt động 200, nhưng điều này có thể chỉ as easily là một 404, một 500, an authentication challenge, hoặc một sản phẩm khác terminal outcome. MỘT chain đó dead-ends trong an lỗi là vẫn “just a chain” (bản dịch) «chỉ một chain» — một hỏng một, nhưng không tự động một loop.

MỘT vòng lặp chuyển hướng là một khác nhau, hơn cụ thể vấn đề: đây là cyclic. Một of đó hops eventually points lại để một URL đó path đã visited, so đó yêu cầu không bao giờ reaches một terminal phản hồi và đó trình duyệt throws ERR_TOO_MANY_REDIRECTS. Đó phân biệt đó matters là cyclic so với. non-cyclic — không “dài” so với. “ngắn,” và không “ends in an error” (bản dịch) «ends trong an lỗi» so với. “ends in 200.” (bản dịch) «ends trong 200.» MỘT hai-hop loop là vẫn một loop; một ten-hop chain đó ends trong một 404 là vẫn một chain.

Trong my 11 Types Of Các chuyển hướng & Của họ SEO Impact I put điều này đơn giản: “Redirect chains are when multiple redirects take place between a requested resource and its final destination.” (bản dịch) «Chuyển hướng chains là khi multiple các chuyển hướng take place giữa một requested tài nguyên và của nó cuối đích.»

Vì sao chains happen trong thực tế

Chains là rarely một single sloppy decision. They accumulate:

  • Stacked migrations. Này là đó big một. MỘT URL được chuyển hướng during một domain move nhận được chuyển hướng again during đó HTTPS migration, thì again during một nền tảng chuyển — mỗi move adds một layer on top of đó cuối cùng thay vì thay thế điều này. http://oldhttps://oldhttps://new là three rules nơi một sẽ làm.
  • www/non-www + HTTP/HTTPS handled as tách biệt rules. http://wwwhttps://wwwhttps://non-www là một classic three-hop chain đó nên là một single combined rule.
  • CMS và plugin conflicts. Hai chuyển hướng plugin, hoặc một plugin rule plus một máy chủ rule, cả hai firing on đó giống nhau URL.
  • Wildcard rules placed ahead of cụ thể rules. MỘT rộng catch-all (old domain → new homepage) sitting trước đó cụ thể rule có nghĩa là đó cụ thể rule không bao giờ fires — đó yêu cầu follows đó wildcard đầu tiên. Bing explicitly tells chủ trang web để put cụ thể chuyển hướng rules trước đó wildcard cho chính xác này reason.

Worked migration ví dụ: three sensible rules, một unnecessary chain

An apparel site có accumulated three riêng reasonable thay đổi:

301  http://old-shop.example/products/trail-shoe
301  https://old-shop.example/products/trail-shoe
301  https://shop.example/products/trail-shoe
200  https://shop.example/shoes/trail-runner

Đó đầu tiên rule upgrades HTTP, đó second moves đó domain, và đó third reflects một catalog rename. Đó vấn đề không phải bất kỳ một migration. Điều này là đó old entry point vẫn replays all three lịch sử decisions.

Replace đó path với một trực tiếp chuyển hướng vĩnh viễn:

301  http://old-shop.example/products/trail-shoe
200  https://shop.example/shoes/trail-runner

Thì cập nhật liên kết nội bộ, canonicals, và sitemap entries đó vẫn advertise an intermediate URL. Này là an illustrative .example trace, không một báo cáo về một cụ thể company.

Và một cụ thể anti-pattern worth calling out: không stack một rộng “everything → homepage” (bản dịch) «mọi thứ → homepage» catch-all on top of existing cụ thể các chuyển hướng. Google warns đó chuyển hướng nhiều old URLs để một irrelevant đích “might be treated as a soft 404 error.” (bản dịch) «có thể là treated as một soft 404 lỗi.» Chuyển hướng old URLs để của họ real equivalents, 1:1.

Cách nhiều hops làm Google thực ra follow?

Này là nơi competing các bài viết muddle three khác nhau numbers vào một. họ là complementary, không contradictory:

1. Đó kỹ thuật ceiling — 10 hops. Straight từ Google Site Moves và Migrations doc: “While Googlebot can follow up to 10 hops in a ‘chain’ of multiple redirects (for example, Page 1 > Page 2 > Page 3), we advise redirecting to the final destination directly.” (bản dịch) «Trong khi Googlebot có thể follow lên để 10 hops trong một ‘chain’ of multiple các chuyển hướng (ví dụ, Trang 1 > Trang 2 > Trang 3), we advise chuyển hướng để đó cuối đích trực tiếp.» Ten là đó hầu hết Googlebot sẽ bao giờ walk qua trong total trước điều này cho lên.

2. Đó practical khuyến nghị — ≤3, ít hơn 5. Giống nhau sentence, giống nhau doc: “If this is not possible, keep the number of redirects in the chain low, ideally no more than 3 and fewer than 5.” (bản dịch) «Nếu này không phải có thể, giữ đó number of các chuyển hướng trong đó chain thấp, ideally không hơn 3 và ít hơn 5.» Này là Google own advice, không một bên thứ ba guess.

3. Đó dated representative statements — về 5 hops theo crawl. Trong một 2014 quản trị viên web hangout tại 46:03, John Mueller described Googlebot sau as nhiều as five các chuyển hướng trong một crawl và, nếu hơn remained, continuing them trong đó tiếp theo crawl. Trong một tách biệt 2020 Reddit comment reported by Search Engine Journal, he đã nói Google follows “up to 5 hops in the chain per crawl attempt.” (bản dịch) «lên để 5 hops trong đó chain theo crawl attempt.» Đó 2014 statement là real representative evidence cho sau đó continuation; điều này đã là không bịa ra. Điều này là cũng lịch sử, so không turn điều này vào một bảo đảm đó hiện tại Googlebot sẽ luôn resume một chain, hoặc đó điều này sẽ làm so on một dễ dự đoán schedule.

My own observation từ real các trang independently matches đó pattern: Google thường picks một lâu hơn chain lại lên, và I dùng về five hops as một triage ngưỡng. Đó là practitioner evidence và an operational cutoff, không đó nguồn of Mueller 2014 statement và không một Google nền tảng limit.

So đó reconciliation là: 10 là Google hiện tại được ghi lại ceiling; 3-để-5 (ít hơn là tốt hơn) là của nó hiện tại practical đích; và ~5 theo crawl là dated representative hướng dẫn từ Mueller. MỘT chain lâu hơn 5 hops không nhất thiết fail outright — điều này typically chỉ delays cách quickly Google reaches và consolidates on đó đích. Past đó 10-hop ceiling, một chuyển hướng lỗi có thể surface trong Search Console’s Trang Lập chỉ mục báo cáo, nhưng đó là không một guaranteed một-để-một mapping — điều gì nhận logged phụ thuộc vào điều gì đó crawler thực ra observed on đó attempt, và một chain có thể cũng chỉ resolve hơn slowly thay vì throwing một cụ thể lỗi.

Vì sao chains quan trọng — và đó myth they không

Đó được ghi lại cost of một chain là latency và crawl processing, không tín hiệu mất mát theo hop. Google own wording: chaining các chuyển hướng “adds latency for users, and not all user agents and browsers support long redirect chains.” (bản dịch) «adds latency cho người dùng, và không all người dùng agents và các trình duyệt hỗ trợ dài chuyển hướng chains.»

Giữ này tách biệt từ đó debunked “PageRank loss per redirect” (bản dịch) «PageRank mất mát theo chuyển hướng» folklore. Google là rõ ràng đó “301 and other permanent redirects don’t cause a loss in PageRank.” (bản dịch) «301 and other permanent redirects don’t cause a loss in PageRank.» Đó statement là về một single hop — điều này không có nghĩa là an unlimited chain là free, vì đó chain cost là một khác nhau điều (crawl latency và time-để-consolidate), không theo-hop equity leakage. Cả hai có thể là đúng tại khi: một chuyển hướng loses không PageRank, và một dài chain vẫn wastes crawl processing và delays lập chỉ mục.

Khi nào nên cách sửa một chain — và khi không để bother

Ở đây nơi I differ từ một lot of đó trade nội dung: không over-optimize. Nhiều SEOs là obsessed với getting rid of ngay cả một additional hop cho một chuyển hướng. I sẽ không worry về đó tại all. Trong my website-migration writing I’ve đã nói I sẽ không worry về điều như một chuỗi chuyển hướng on đó root path, hoặc chasing mỗi external site để cập nhật của họ links để bạn.

My thực tế hoạt động ngưỡng: I không typically worry về chuyển hướng chains dưới về 5 hops, nhưng past 5 I’ve seen các vấn đề với them đang được crawl và được tính properly — so đó là my cutoff cho telling mọi người để bắt đầu hoạt động on them. Weight đó by đó path, cũng: một 5-hop chain on một frequently-được crawl, cao-giá trị URL là worth sửa; một stray extra hop on một thấp-traffic trang thường không worth của bạn afternoon.

Cách tìm chuyển hướng chains

Detection là layered — command line cho spot kiểm tra, các crawler cho site-wide:

  • curl -IL <url> on macOS/Linux (hoặc Invoke-WebRequest on Windows) prints mỗi hop status line xuống để đó cuối 200. Fastest way để trace một URL. See đó Scripts tab cho sao chép và dán commands.
  • Trình duyệt devtools → Network tab. Load đó URL, watch đó sequence of 301/ 302 các yêu cầu trước đó cuối 200. Good cho một-off visual kiểm tra.
  • Screaming Frog. Phản hồi Codes tab, plus Các báo cáo → Các chuyển hướng → Chuyển hướng Chains cho một site-wide export of mỗi chain và của nó hop count.
  • Ahrefs Site Audit. Đó Các chuyển hướng báo cáo flags một “Redirect chain too long” (bản dịch) «Chuỗi chuyển hướng cũng dài» vấn đề. Trong Site Explorer bạn có thể cũng filter backlink hoặc outgoing links by “No. of redirects,” (bản dịch) «Không. of các chuyển hướng,» và đó Ahrefs SEO Toolbar HTTP các header tab cho thấy đó chuyển hướng sequence cho một link bạn nhấp.

MỘT chain báo cáo là chỉ một slice of đó existing-rule review. Đó chuyển hướng-estate audit cũng kiểm tra dead cuối targets, homepage/generic dumps, rộng wildcards đó swallow trực tiếp URLs, và liệu một dài-unused rule có thể là retired qua một logged, reversible 404 probe.

Cách sửa them

Một rule, mọi nơi: point mỗi chuyển hướng trực tiếp tại đó cuối trực tiếp đích, không bao giờ tại một sản phẩm khác chuyển hướng. “Fixing a chain” (bản dịch) «Sửa một chain» là thực sự chỉ rewriting mỗi rule đích từ đó intermediate URL để đó đúng cuối URL. MỘT → B → C becomes MỘT → C và B → C.

Thì finish đó job hầu hết mọi người skip:

  • Cập nhật liên kết nội bộ so they point tại đó cuối URL, không tại một chuyển hướng một — nếu không của bạn own site giữ feeding đó chain.
  • Cập nhật canonical tags và XML sitemaps đó vẫn list old hoặc intermediate URLs.
  • Order của bạn rules correctly so bạn không tạo new chains: cụ thể rules trước wildcards/catch-alls, và combine www/HTTPS consolidation vào một single rule nơi bạn có thể.
  • Kiểm tra đó các mã trạng thái, không chỉ đó destinations, nếu bất cứ điều gì trong đó chain không một đơn giản trang yêu cầu. 301 và 302 có thể let một client turn một POST vào một GET on đó tiếp theo hop; 307 và 308 bảo toàn đó original phương thức. MỘT chain đó là harmless cho một trình duyệt loading một trang có thể silently break một form submission, an API call, một signed URL, hoặc một webhook nếu đó sai status loại là mixed trong.

Làm đó và đó chain collapses để một single hop — mà là all bạn bao giờ needed.

Related reading trong này cluster: đó khác biệt giữa một vĩnh viễn và tạm thời chuyển hướng (301 so với 302), và điều gì happens khi một chain không bao giờ terminates (chuyển hướng loops).

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.