HTTP Các chuyển hướng
Điều gì an HTTP chuyển hướng thực sự là (một 3xx status plus một Location header), đó 301/302/303/307/308 landscape, cách implement them, và chuyển hướng so với. canonical — đó hub cho đó các chuyển hướng subcluster.
Ngôn ngữ
1 tín hiệu bằng chứng trên trang này
- Công cụ trực tuyến liên quanHTTP Status & Redirect Checker
MỘT chuyển hướng là an HTTP phản hồi với một 3xx mã trạng thái và một Location header đó gửi các trình duyệt và các crawler từ an old URL để một new một. Google sorts them vào hai buckets: vĩnh viễn (301/308) truyền một mạnh tín hiệu canonicalization so các tín hiệu xếp hạng move forward; tạm thời (302/303/307) truyền chỉ một yếu một. Trong mỗi bucket đó codes differ by liệu đó HTTP phương thức là được bảo toàn — 307/308 giữ điều này, 301/302 có thể không. Implement them máy chủ-side (.htaccess/nginx), tại đó CDN/edge, hoặc qua một CMS plugin; JS và meta-refresh các chuyển hướng là weaker vì they phụ thuộc on kết xuất. MỘT chuyển hướng không phải một canonical tag: chuyển hướng khi chỉ một URL nên exist going forward, canonicalize khi several phải stay trực tiếp. Này hub maps đó toàn bộ landscape và points bạn để đó deep dives.
TL;DR — MỘT chuyển hướng gửi anyone ai các yêu cầu an old URL để một new một thay vì. Đó hầu hết phổ biến kind là một 301 (“moved permanently” (bản dịch) «đã chuyển vĩnh viễn»), mà tells Google để move đó old trang các tín hiệu xếp hạng để đó new URL. MỘT 302 là “tạm thời.” Nhận đó vĩnh viễn-so với-tạm thời lựa chọn right và pick real máy chủ-cấp độ các chuyển hướng over JavaScript ones, và bạn đã covered 90% of điều gì matters.
Điều gì một chuyển hướng là
HTTP các chuyển hướng dùng 3xx các phản hồi và một Location trường để trực tiếp một client để một sản phẩm khác URI. 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 Google xử lý vĩnh viễn các chuyển hướng as mạnh các tín hiệu canonical nhưng không bảo đảm đích lập chỉ mục. 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
Khi một trang moves, bạn không muốn khách truy cập (hoặc Google) để hit một dead end tại đó old address. MỘT chuyển hướng là đó instruction đó forwards them để đó new một tự động. Ai đó clicks đó old link, và đó máy chủ âm thầm hands them đó new trang thay vì.
Dưới đó hood, một chuyển hướng là chỉ một cụ thể kind of máy chủ phản hồi: một status
code trong đó 300s (hầu hết thường 301 hoặc 302) plus một Location header đó
says “here’s where to go instead.” (bản dịch) «ở đây nơi để go thay vì.» Bạn không có để think về đó plumbing để
dùng một — nhưng đây là vì sao các chuyển hướng là reliable trong một way đó một “this page moved,
click here” (bản dịch) «này trang moved, nhấp ở đây» message không.
Đó hai đó quan trọng hầu hết
- 301 — Đã chuyển vĩnh viễn. Dùng này khi đó move là cho good. Điều này tells tìm kiếm engines đó trang có một new home, so đó old trang thứ hạng và links transfer để đó new URL. Này là đó một bạn’ll reach cho hầu hết.
- 302 — Được tìm thấy (tạm thời). Dùng này khi đó move là chỉ cho hiện tại — một ngắn campaign, an MỘT/B kiểm thử, một trang bạn’ll put lại. Điều này tells Google không để move đó các tín hiệu xếp hạng, vì đó thay đổi không vĩnh viễn.
Có vài hơn numbers (303, 307, 308), nhưng đối với hầu hết trang web đó practical decision là chỉ: là này move vĩnh viễn (301) hoặc tạm thời (302)?
Cách bạn set một lên
- On máy chủ của bạn — Apache’s
.htaccesshoặc an nginx config rule. Đó classic. - Qua một CMS plugin — on WordPress, một chuyển hướng plugin thường chỉ edits đó
.htaccessfile cho bạn. - Tại của bạn CDN / edge — Cloudflare và similar let bạn set các chuyển hướng trước đó yêu cầu bao giờ reaches máy chủ của bạn.
Tránh JavaScript các chuyển hướng (nơi một script gửi đó trình duyệt onward) khi bạn có thể. Google có thể honor them, nhưng chỉ sau điều này successfully renders đó trang — an extra step đó sometimes fails — so họ là chậm hơn và ít hơn reliable hơn một real máy chủ chuyển hướng.
Đó điều mọi người nhận sai
MỘT chuyển hướng không phải đó giống nhau as một canonical tag. Chuyển hướng khi đó old URL nên dừng existing và mọi người nên end lên on đó new một. Dùng một canonical tag khi several URLs cần để stay trực tiếp nhưng bạn muốn Google để treat một as đó “main” version (think sản phẩm các trang với tracking parameters). Chuyển hướng = một URL survives; canonical = several survive, một là được ưu tiên.
Muốn đó giao thức-cấp độ detail, đó đầy đủ 301/302/303/307/308 rundown, cách dài để giữ một chuyển hướng, và đó chain/loop pitfalls? Chuyển để đó Advanced tab.
TL;DR — MỘT chuyển hướng là an HTTP phản hồi với một 3xx mã trạng thái và một
Locationheader — giao thức đầu tiên, SEO second. Google collapses đó codes vào hai canonicalization buckets: vĩnh viễn (301/308) = mạnh tín hiệu (các tín hiệu consolidate forward), tạm thời (302/303/307) = yếu tín hiệu (they thường stay put, nhưng một dài-lived chuyển hướng tạm thời có thể flip). Trong mỗi bucket, 307 và 308 bảo toàn đó HTTP phương thức và thân phản hồi; 301 và 302 có thể không. Implement máy chủ-side, tại đó CDN/edge (my preference), hoặc qua một CMS plugin; JS và delayed meta-refresh các chuyển hướng là weaker vì they phụ thuộc on kết xuất. MỘT single good chuyển hướng không leak PageRank — đó real risks là chains (tránh them) và loops (các công cụ tìm kiếm chỉ bỏ qua them). Giữ các chuyển hướng cho ít nhất một năm. Và một chuyển hướng không phải một canonical tag.
Điều gì một chuyển hướng thực ra là, tại đó giao thức cấp độ
Chuyển hướng các mã trạng thái có standardized phương thức-xử lý semantics. 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 Tìm kiếm hướng dẫn distinguishes vĩnh viễn và tạm thời các tín hiệu trong khi recommending trực tiếp máy chủ-side các chuyển hướng cho moves. 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
Hầu hết SEO writing jumps straight để “301 means permanent” (bản dịch) «301 có nghĩa là vĩnh viễn» không có bao giờ saying điều gì một
chuyển hướng là. đây là worth grounding ở đây, vì đó mechanism giải thích mọi thứ
downstream. Theo MDN,
“redirection is triggered by a server sending a special redirect response to a
request. Redirect responses have status codes that start with 3, and a Location
header holding the URL to redirect to.” (bản dịch) «Máy chủ kích hoạt chuyển hướng bằng cách gửi một phản hồi chuyển hướng đặc biệt. Phản hồi này dùng mã trạng thái bắt đầu bằng 3 và header Location chứa URL đích.»
So một chuyển hướng là hai điều travelling together: một 3xx mã trạng thái (301, 302,
303, 307, 308…) và một Location header naming đó đích. Đó trình duyệt hoặc
crawler đọc đó phản hồi và re-các yêu cầu đó URL trong Location. Đó mã trạng thái
là đó semantics — vĩnh viễn hoặc tạm thời, phương thức-bảo toàn hoặc không — và đó
Location header là đó address. Mọi thứ an SEO cares về là downstream of
mà 3xx code bạn gửi.
Đó SEO cách diễn đạt on top of đó, as I put điều này trong my 11 Types Of Các chuyển hướng & Của họ SEO Impact piece tại Ahrefs: “A redirect is a way to send people and bots to a new URL when they request the old URL, but the page has changed locations.” (bản dịch) «MỘT chuyển hướng là một way để gửi mọi người và bots để một new URL khi they yêu cầu đó old URL, nhưng đó trang có changed locations.»
Vì sao các chuyển hướng quan trọng cho SEO
Google các chuyển hướng tài liệu frames đó purpose plainly: “Redirecting URLs is the practice of resolving an existing URL to a different one, effectively telling your visitors and Google Search that a page has a new location.” (bản dịch) «Chuyển hướng URLs là đó practice of resolving an existing URL để một khác nhau một, effectively telling của bạn khách truy cập và Google Search đó một trang có một new location.» Đó SEO consequence splits cleanly by permanence:
- Vĩnh viễn các chuyển hướng cho thấy đó new đích trong kết quả tìm kiếm.
- Tạm thời các chuyển hướng giữ đó nguồn trang trong kết quả tìm kiếm.
Và có một link-equity dimension. Google giữ track of cả hai ends of một chuyển hướng: “When you redirect a URL, Google keeps track of both the redirect source (the old URL) and the redirect target (the new URL). One of the URLs will be the canonical; which one, depends on signals such as whether the redirect was temporary or permanent.” (bản dịch) «Khi bạn chuyển hướng một URL, Google giữ track of cả hai đó nguồn chuyển hướng (đó old URL) và đó đích chuyển hướng (đó new URL). Một of đó URLs sẽ là đó canonical; mà một, phụ thuộc vào các tín hiệu such as liệu đó chuyển hướng đã là tạm thời hoặc vĩnh viễn.» Vĩnh viễn các chuyển hướng consolidate các tín hiệu forward để đó new URL; tạm thời ones thường leave them với đó old một.
Đó chuyển hướng landscape: 301, 302, 303, 307, 308
Ở đây đó toàn bộ family tại một summary cấp độ — mỗi có của nó own deep dive trong này subcluster (see “Where to go next” (bản dịch) «Nơi để go tiếp theo»):
- 301 (Đã chuyển vĩnh viễn) — đó workhorse chuyển hướng vĩnh viễn. MỘT mạnh tín hiệu canonicalization; các tín hiệu xếp hạng consolidate forward. Trong Google crawler tài liệu: “Google follows the redirect, and Google systems use the redirect as a strong signal that the redirect target should be processed.” (bản dịch) «Google follows đó chuyển hướng, và Google các hệ thống dùng đó chuyển hướng as một mạnh tín hiệu đó đích chuyển hướng nên là processed.»
- 302 (Được tìm thấy) — đó tiêu chuẩn chuyển hướng tạm thời. Google follows điều này “and Google systems use the redirect as a weak signal.” (bản dịch) «và Google các hệ thống dùng đó chuyển hướng as một yếu tín hiệu.» Yếu, không zero — leave một 302 trong place dài đủ và điều này có thể end lên treated như một 301.
- 303 (Xem tài nguyên khác) — đó outlier. đây là grouped với đó tạm thời bucket, và
đây là đó code behind đó Post/Chuyển hướng/Nhận pattern (gửi một form, nhận bounced để một
kết quả trang với một
GET). đây là rare trong SEO, và của nó treatment là genuinely murky — as I’ve noted, 303s có an chưa xác định treatment từ Google và có thể behave như một 301 hoặc một 302 depending on cách they function. - 307 (Chuyển hướng tạm thời) — giống nhau SEO meaning as một 302, nhưng điều này preserves đó HTTP phương thức và thân phản hồi. Google tài liệu put điều này bluntly: 307 là “equivalent to 302.” (bản dịch) «tương đương để 302.» Bạn’ll cũng see 307s xuất hiện tự động on HTTPS các trang đó dùng HSTS.
- 308 (Chuyển hướng vĩnh viễn) — giống nhau SEO meaning as một 301, nhưng điều này preserves đó phương thức và thân phản hồi. Google: 308 là “equivalent to 301.” (bản dịch) «tương đương để 301.»
Đó phương thức-preservation detail (307/308 giữ đó original phương thức và thân phản hồi; 301/302
permit một client để thay đổi một POST để GET on đó way qua) không thay đổi cách
Google ranks bất cứ điều gì, nhưng điều này matters một lot nếu bạn là chuyển hướng form submissions
hoặc API calls. Google own hướng dẫn không phải để pick
carelessly: “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.” (bản dịch) «Trong khi Google xử lý những các mã trạng thái cùng cách, hãy nhớ rằng đó họ là semantically khác nhau. Dùng đó mã trạng thái đó là appropriate cho đó chuyển hướng so other clients (ví dụ, e-readers, other các công cụ tìm kiếm) có thể benefit từ điều này.» (có một đầy đủ side-by-side trong đó Các bảng tra nhanh tab.)
Cách các chuyển hướng ảnh hưởng crawling, lập chỉ mục, và giá trị liên kết
Hai buckets, một phân biệt. Google chuyển hướng tài liệu mô tả vĩnh viễn các chuyển hướng
(301, 308, instant meta refresh, JS location) as một case nơi “the indexing
pipeline uses the redirect as a signal that the redirect target should be canonical,” (bản dịch) «đó pipeline lập chỉ mục dùng đó chuyển hướng as một tín hiệu đó đích chuyển hướng nên là canonical,»
và tạm thời ones (302, 303, 307, delayed meta refresh) as một case nơi “the
indexing pipeline doesn’t use the redirect as a signal that the redirect target
should be canonical.” (bản dịch) «đó pipeline lập chỉ mục không dùng đó chuyển hướng as một tín hiệu đó đích chuyển hướng nên là canonical.»
Đó PageRank myth là dead. Đó old chestnut đó các chuyển hướng “lose 10-15% of link equity” (bản dịch) «lose 10-15% of giá trị liên kết» hasn’t đã đúng cho năm. Google Gary Illyes đã nói trong 2016 đó “30x redirects don’t lose PageRank anymore,” (bản dịch) «30x các chuyển hướng không lose PageRank anymore,» và John Mueller noted điều này đã không ngay cả new information tại đó time. MỘT single, correctly implemented chuyển hướng truyền essentially all of một trang tín hiệu giá trị. Đó costs come từ chains và loops, không từ đó existence of một chuyển hướng.
Cách dài để giữ một chuyển hướng. Google site-move hướng dẫn says để “keep the redirects for as long as possible, generally at least 1 year” (bản dịch) «giữ đó các chuyển hướng cho miễn là có thể, generally ít nhất 1 năm» so điều này có thể transfer all các tín hiệu để đó new URLs. Gary Illyes floated đó ý tưởng đó “after 1 y all signals had time to pass on from A to B.” (bản dịch) «sau 1 y all các tín hiệu đã có time để truyền on từ MỘT để B.» I thực ra tested đó: I đã xóa 301 các chuyển hướng từ four Ahrefs posts đó đã có older nội dung được chuyển hướng để them, và watched điều gì happened. Ở đó đã là “a clear drop in referring domains after I did this,” (bản dịch) «một clear drop trong referring domains sau I đã làm này,» nhưng “not much drop in traffic to these posts.” (bản dịch) «không nhiều drop trong traffic để những posts.» My honest conclusion: “I’m not willing to conclusively say that permanent redirects pass value even after one year, but what Gary said seems to mostly hold true.” (bản dịch) «I’m không willing để conclusively chẳng hạn đó vĩnh viễn các chuyển hướng truyền giá trị ngay cả sau một năm, nhưng điều gì Gary đã nói seems để mostly hold đúng.» Đó safe default là vẫn: không rip out old các chuyển hướng casually.
Chuyển hướng chains và chuyển hướng loops
- MỘT chuỗi chuyển hướng là hơn một hop giữa đó requested URL và của nó cuối đích (Trang 1 → Trang 2 → Trang 3). Google follows lên để 10 chuyển hướng hops (“By default, Google’s crawlers follow up to 10 redirect hops” (bản dịch) «Theo mặc định, Google các crawler follow lên để 10 chuyển hướng hops») — nhưng của nó hiện tại site-move hướng dẫn says để tránh chains và, nếu một là unavoidable, giữ điều này để không hơn 3 và ít hơn 5 hops. Ten là một crawler ceiling; 3-để-5 là practical hướng dẫn, không một conflicting limit. Chains thêm latency, waste ngân sách crawl, và muddy analytics.
- MỘT vòng lặp chuyển hướng là một chain đó eats của nó own tail — một URL các chuyển hướng để itself, hoặc lại để an trước đó URL trong đó chain — so điều này không bao giờ resolves. Các trình duyệt throw một “too many redirects” (bản dịch) «cũng nhiều các chuyển hướng» lỗi; các công cụ tìm kiếm đơn giản cho lên. As John Mueller put điều này: “a redirect loop is a URL that doesn’t work, so it’s essentially a broken link. We ignore these for search.” (bản dịch) «một vòng lặp chuyển hướng là một URL đó không hoạt động, so đây là essentially một hỏng link. We bỏ qua những cho tìm kiếm.» Loops cũng trap các crawler và waste máy chủ các tài nguyên.
Có cũng dated representative hướng dẫn behind đó familiar five-hop number. 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à, khi hơn remained, continuing them on đó tiếp theo crawl. Trong 2020 he riêng described Google as sau lên để five hops theo crawl attempt. Những lịch sử statements help giải thích đó number, nhưng neither overrides đó hiện tại tài liệu hoặc bảo đảm đó mỗi dài chain sẽ là resumed on một particular schedule.
My independent practitioner observation là đó Google thường làm pick lâu hơn chains lại lên, và I dùng về five hops as một cách sửa-priority ngưỡng. đó là an operational judgment từ điều gì I’ve seen, không một Google nền tảng limit. Đó đích khi bạn control đó các chuyển hướng là vẫn một trực tiếp hop.
Cả hai có của họ own dedicated các bài viết dưới.
Cách implement các chuyển hướng
có không single “right” place để put một chuyển hướng — pick điều gì bạn có thể maintain:
- Máy chủ-side config. Apache
.htaccess, nginx rules, hoặc máy chủ-side scripts. Đó default đối với hầu hết trang web, và đó hầu hết reliable. On WordPress, “most WordPress installs will be running Apache and the plugins used for redirecting will actually be editing a website’s.htaccessfile” (bản dịch) «hầu hết WordPress installs sẽ là đang chạy Apache và đó plugin dùng cho chuyển hướng sẽ thực ra là editing một website file» — đó plugin là chỉ một friendlier front end. - CDN / edge. Cloudflare rules, edge workers, và similar fire trước đó yêu cầu reaches của bạn origin. Này là my own preference: “I typically prefer to have redirects on the edge (CDN-level) over having them on the server.” (bản dịch) «I typically ưu tiên để có các chuyển hướng on đó edge (CDN-cấp độ) over có them on đó máy chủ.» Tuy vậy, cho hầu hết mọi người I “always recommend going with what is easiest for you to implement. For many people that is server-level redirects.” (bản dịch) «luôn khuyến nghị going với điều gì là easiest cho bạn để implement. Cho nhiều mọi người đó là máy chủ-cấp độ các chuyển hướng.»
- Client-side: meta refresh. MỘT
<meta http-equiv="refresh">tag. An instant (0-second) meta refresh là đọc by Google as vĩnh viễn; một delayed một as tạm thời. Chậm hơn và clumsier hơn một máy chủ chuyển hướng, nhưng occasionally đó chỉ lever bạn có. - Client-side: JavaScript. MỘT script sets
window.location. Google có thể honor điều này, nhưng chỉ nếu kết xuất succeeds — một tách biệt, sometimes-failing pipeline step. Google own advice: “Only use JavaScript redirects if you can’t do server-side or meta refresh redirects.” (bản dịch) «Chỉ dùng JavaScript các chuyển hướng nếu bạn không thể làm máy chủ-side hoặc meta refresh các chuyển hướng.» My được khuyến nghị order cho vĩnh viễn các chuyển hướng reflects đó reliability ladder: 308 / 301 → meta refresh 0 → JavaScript → crypto.
Chuyển hướng so với. canonical tag
Những solve khác nhau các vấn đề và nhận conflated constantly.
- Chuyển hướng — dùng điều này khi đó old URL nên dừng resolving để của nó own nội dung hoàn toàn. Chỉ một URL nên exist going forward. Đó old address forwards; điều này không lâu hơn serves một trang of của nó own.
- Canonical tag — dùng điều này khi several URLs phải stay trực tiếp và independently
accessible, nhưng bạn muốn Google để treat một as đó được ưu tiên version. Think
faceted-nav variants, tracking-parameter URLs, hoặc print versions — all reachable,
all pointing một
rel=canonicaltại đó main một.
Bing frames đó giống nhau split cleanly trong của nó December 2025 duplicate-nội dung post: “Use 301 redirects to consolidate variants into a single preferred URL. Apply canonical tags when multiple versions must remain accessible.” (bản dịch) «Dùng 301 các chuyển hướng để consolidate variants vào một single được ưu tiên URL. Apply canonical tags khi multiple versions phải vẫn accessible.» Nếu một canonical hint là đang đã bỏ qua và bạn truly muốn consolidation, bạn có thể escalate để một chuyển hướng — nhưng chỉ khi đó duplicate URL không cần để giữ serving của nó own nội dung.
MỘT note on Bing
Directionally, Bing agrees với Google: vĩnh viễn moves nhận 301s, và tạm thời ones nhận 302s. Bing Fabrice Canel có đã nói đây là “preferable to use a 302 redirect if your destination URL may change within 2 days, else 301 is recommended,” (bản dịch) «preferable để dùng một 302 chuyển hướng nếu của bạn đích URL có thể thay đổi trong 2 days, khác 301 là được khuyến nghị,» và his colleague Frédéric Dubut clarified đó “2 days” đã không một hard ngưỡng — “anytime a redirect is temporary… you should use 302s.” (bản dịch) «anytime một chuyển hướng là tạm thời… bạn nên dùng 302s.» Giống nhau mental model, chỉ phrased khoảng cách soon đó đích có thể thay đổi.
Nơi để go tiếp theo: đó các chuyển hướng subcluster
Này hub là đó map. Mỗi topic dưới là của nó own deep dive, nested dưới này hub và listed trong đó sidebar:
Đó riêng lẻ chuyển hướng codes
- 301 Chuyển hướng — đó vĩnh viễn workhorse: cách điều này consolidates các tín hiệu forward, và khi nào nên reach cho điều này.
- 302 Chuyển hướng — đó tiêu chuẩn chuyển hướng tạm thời, vì sao đây là một yếu (không zero) tín hiệu, và cách điều này có thể drift vào 301 behavior.
- 303 Chuyển hướng (Xem tài nguyên khác) — đó Post/Chuyển hướng/Nhận code, vì sao đây là rare trong SEO, và vì sao của nó Google treatment là genuinely chưa xác định.
- 307 Chuyển hướng tạm thời — giống nhau SEO meaning as một 302, nhưng điều này strictly preserves đó HTTP phương thức, và nơi điều này cho thấy lên (HSTS, form/API các chuyển hướng).
- 308 Chuyển hướng vĩnh viễn — giống nhau SEO meaning as một 301, nhưng điều này strictly preserves đó HTTP phương thức và thân phản hồi.
Đó head-để-head comparisons
- 301 so với. 302 Chuyển hướng — vĩnh viễn so với. tạm thời, forward so với. backward tín hiệu consolidation, và mà để dùng khi.
- 301 so với. 308 Chuyển hướng — giống nhau SEO meaning, nhưng 308 preserves đó HTTP phương thức và thân phản hồi.
- 302 so với. 307 Chuyển hướng — giống nhau story on đó tạm thời side: giống hệt cho SEO, nhưng 307 giữ đó phương thức và thân phản hồi cho forms và APIs.
Đó client-side implementations
- JavaScript Các chuyển hướng — vì sao họ là đó weakest option, cách Google render pipeline xử lý them differently từ một máy chủ-side 301, và khi họ là an acceptable cuối cùng resort.
- Meta Refresh Chuyển hướng — instant so với. delayed refreshes, vì sao điều này sits giữa máy chủ-side và JavaScript trong Google order of preference, và vì sao đây là discouraged.
Đó pitfalls
- Chuyển hướng Chains — vì sao để chuyển hướng straight để đó cuối URL, đó 10-hop limit, và cách chains waste ngân sách crawl.
- Chuyển hướng Loops — đó không bao giờ-resolving chuyển hướng, vì sao các công cụ tìm kiếm bỏ qua điều này, và cách break đó cycle.
Trong Google Search Console
- Trang với Chuyển hướng — điều gì này Trang Lập chỉ mục status có nghĩa là, vì sao đây là thông thường và không phải lỗi, và đó rare cases đó cần hành động.
- Lỗi chuyển hướng — Google four gây ra (chain cũng dài, loop, max URL length, bad/empty URL), và cách điều này differs từ đó thông thường “Page with redirect” (bản dịch) «Trang với chuyển hướng» status.
Cho đó toàn bộ HTTP status-code picture này subcluster sits bên trong — đó 2xx/3xx/4xx/5xx families và đó codes beyond các chuyển hướng — see đó cluster chỉ mục tại /kỹ thuật-seo/http-status-codes/.
AI summary
MỘT condensed take on đó Advanced version:
- MỘT chuyển hướng = một 3xx mã trạng thái + một
Locationheader. Đó mã trạng thái là đó semantics (vĩnh viễn/tạm thời, phương thức-bảo toàn hoặc không);Locationlà đó đích. Giao thức đầu tiên, SEO second. - Hai canonicalization buckets: vĩnh viễn 301/308 = mạnh tín hiệu (các tín hiệu consolidate forward để đó new URL); tạm thời 302/303/307 = yếu tín hiệu (các tín hiệu thường stay với đó old URL, nhưng một dài-lived tạm thời có thể flip).
- Trong mỗi bucket: 307/308 bảo toàn đó HTTP phương thức và thân phản hồi; 301/302 có thể không. Không xếp hạng khác biệt, nhưng điều này matters cho forms và APIs.
- 303 là đó outlier — đó Post/Chuyển hướng/Nhận code, rare trong SEO, với genuinely chưa xác định Google treatment.
- PageRank myth là dead: một single correct chuyển hướng không leak equity (Illyes, 2016). Costs come từ chains (Google follows lên để 10 hops nhưng says tránh them) và loops (các công cụ tìm kiếm bỏ qua them as hỏng links).
- Giữ các chuyển hướng ≥ 1 năm. Patrick own kiểm thử of removing năm-old 301s showed một drop trong referring domains nhưng little traffic mất mát — “mostly holds true,” (bản dịch) «mostly holds đúng,» so không xóa casually.
- Implement máy chủ-side (.htaccess/nginx), tại đó CDN/edge (Patrick
preference), hoặc qua một CMS plugin (mà thường chỉ edits
.htaccess). JS và delayed meta-refresh là weaker vì they phụ thuộc on kết xuất. - Chuyển hướng ≠ canonical: chuyển hướng khi chỉ một URL nên exist going forward; canonicalize khi several stay trực tiếp nhưng một là được ưu tiên.
Tài liệu chính thức
Chính-nguồn tài liệu on các chuyển hướng.
- Các chuyển hướng và Google Search — đó canonical doc: vĩnh viễn so với. tạm thời cách diễn đạt, đó chuyển hướng-loại các bảng (301/308/302/303/307, meta refresh, JS, crypto), và đó alternate-URL / link-equity concept.
- Cách HTTP Các mã trạng thái Ảnh hưởng Google Các crawler — 3xx behavior, đó 10-hop follow limit, và 301/302/307/308 crawler treatment.
- Move một site với URL thay đổi — tránh chaining các chuyển hướng, và “keep the redirects… generally at least 1 year.” (bản dịch) «giữ đó các chuyển hướng… generally ít nhất 1 năm.»
- Consolidate duplicate URLs — vì sao một canonical preference là “a hint, not a rule,” (bản dịch) «một hint, không một rule,» và cách điều này interacts với các chuyển hướng.
- Tìm kiếm Off đó Record — Google Tìm kiếm Relations team có an episode on chuyển hướng types (301 so với. 302, điều gì 307/308 là cho, domain merges).
Bing / Microsoft
- Làm Duplicate Nội dung Hurt SEO và AI Khả năng hiển thị trên tìm kiếm? — Fabrice Canel & Krishna Madhavan on dùng 301s để consolidate variants so với. canonical tags khi versions phải stay trực tiếp.
Kỹ thuật reference
- Redirections trong HTTP — MDN’s giao thức-cấp độ definition (3xx status +
Locationheader) và theo-code phương thức/thân phản hồi xử lý.
Quotes từ đó nguồn
On-đó-record statements từ Google, Bing, và MDN. Mỗi link là một deep link đó jumps để đó quoted passage on đó trang nguồn.
Google — điều gì các chuyển hướng là cho, và vĩnh viễn so với. tạm thời
- “Redirecting URLs is the practice of resolving an existing URL to a different one, effectively telling your visitors and Google Search that a page has a new location.” (bản dịch) «Chuyển hướng URLs là đó practice of resolving an existing URL để một khác nhau một, effectively telling của bạn khách truy cập và Google Search đó một trang có một new location.» — Google Search Central tài liệu. Nhảy đến trích dẫn
- “we recommend that you use a permanent server-side redirect whenever possible.” (bản dịch) «we khuyến nghị đó bạn dùng một vĩnh viễn máy chủ-side chuyển hướng bất cứ khi nào có thể.» Nhảy đến trích dẫn
- “When you redirect a URL, Google keeps track of both the redirect source (the old URL) and the redirect target (the new URL).” (bản dịch) «Khi bạn chuyển hướng một URL, Google giữ track of cả hai đó nguồn chuyển hướng (đó old URL) và đó đích chuyển hướng (đó new URL).» Nhảy đến trích dẫn
- “Only use JavaScript redirects if you can’t do server-side or meta refresh redirects.” (bản dịch) «Chỉ dùng JavaScript các chuyển hướng nếu bạn không thể làm máy chủ-side hoặc meta refresh các chuyển hướng.» Nhảy đến trích dẫn
Google — crawler treatment of đó codes
- “Google follows the redirect, and Google systems use the redirect as a strong signal that the redirect target should be processed.” (bản dịch) «Google follows đó chuyển hướng, và Google các hệ thống dùng đó chuyển hướng as một mạnh tín hiệu đó đích chuyển hướng nên là processed.» (301) Nhảy đến trích dẫn
- “Google’s crawlers follow the redirect, and Google systems use the redirect as a weak signal that the redirect target should be processed.” (bản dịch) «Google các crawler follow đó chuyển hướng, và Google các hệ thống dùng đó chuyển hướng as một yếu tín hiệu đó đích chuyển hướng nên là processed.» (302) Nhảy đến trích dẫn
- “While Google treats these status codes the same way, keep in mind that they’re semantically different.” (bản dịch) «Trong khi Google xử lý những các mã trạng thái cùng cách, hãy nhớ rằng đó họ là semantically khác nhau.» (307 ≈ 302, 308 ≈ 301) Nhảy đến trích dẫn
- “By default, Google’s crawlers follow up to 10 redirect hops.” (bản dịch) «Theo mặc định, Google các crawler follow lên để 10 chuyển hướng hops.» Nhảy đến trích dẫn
Google — chains, và cách dài để giữ các chuyển hướng
- “Avoid chaining redirects.” (bản dịch) «Tránh chaining các chuyển hướng.» Nhảy đến trích dẫn
- “ideally no more than 3 and fewer than 5.” (bản dịch) «ideally không hơn 3 và ít hơn 5.» Nhảy đến trích dẫn
- “Keep the redirects for as long as possible, generally at least 1 year.” (bản dịch) «Giữ đó các chuyển hướng cho miễn là có thể, generally ít nhất 1 năm.» Nhảy đến trích dẫn
John Mueller, Google — dated five-hop statements
- Trong một 2014 quản trị viên web hangout, Mueller described Googlebot sau lên để five các chuyển hướng trong một crawl và continuing bất kỳ remainder on đó tiếp theo crawl. Watch từ 46:03
- “up to 5 hops in the chain per crawl attempt” (bản dịch) «lên để 5 hops trong đó chain theo crawl attempt» (2020 Reddit comment, relayed qua Search Engine Journal.) Đọc bài đưa tin
John Mueller, Google — chuyển hướng loops
- “In general, a redirect loop is a URL that doesn’t work, so it’s essentially a broken link. We ignore these for search.” (bản dịch) «Nhìn chung, một vòng lặp chuyển hướng là một URL đó không hoạt động, so đây là essentially một hỏng link. We bỏ qua những cho tìm kiếm.» Nhảy đến trích dẫn
Fabrice Canel, Microsoft Bing — 301 so với. 302 timing
- “When the future is uncertain… preferable to use a 302 redirect if your destination URL may change within 2 days, else 301 is recommended.” (bản dịch) «Khi đó tương lai là uncertain… preferable để dùng một 302 chuyển hướng nếu của bạn đích URL có thể thay đổi trong 2 days, khác 301 là được khuyến nghị.» Nhảy đến trích dẫn
MDN — đó giao thức-cấp độ definition
- “redirection is triggered by a server sending a special redirect response to a request. Redirect responses have status codes that start with
3, and aLocationheader holding the URL to redirect to.” (bản dịch) «redirection là triggered by một máy chủ sending một special chuyển hướng phản hồi để một yêu cầu. Chuyển hướng các phản hồi có các mã trạng thái đó bắt đầu với , và một header holding đó URL để chuyển hướng để.» Đọc đó doc
Chuyển hướng implementation checklist
Trước và sau khi bạn put một chuyển hướng trực tiếp:
- Right code cho đó situation — vĩnh viễn move →
301/308; tạm thời →302/307; bảo toàn một formPOST→307/308. - Chuyển hướng để đó closest-matching URL, không một blanket chuyển hướng of mọi thứ để đó homepage (đó đọc as một soft 404 để Google).
- Straight để đó cuối đích — không chain. Cập nhật đó nguồn rule bất cứ khi nào một đích itself sau đó moves.
- Không loops — xác nhận đó đích không chuyển hướng lại vào đó chain
(
curl -ILđó old URL và đọc đó toàn bộ hop sequence). - Máy chủ-cấp độ hoặc edge, không JavaScript, wherever có thể.
- Standardize đó obvious variants — www so với. non-www, HTTP so với. HTTPS, trailing-slash, và letter case — để một canonical form.
- Cập nhật liên kết nội bộ để point tại đó new URL trực tiếp, so bạn là không relying on đó chuyển hướng cho của bạn own navigation.
- Giữ điều này trong place ≥ 1 năm (Google hướng dẫn) — lâu hơn cho cao-giá trị các trang; không xóa old các chuyển hướng casually.
- Giữ một rollback path — note đó prior đích (hoặc đó old trang own nội dung, nếu đây là đang retired) trước khi bạn flip đó chuyển hướng trực tiếp, so một bad đích hoặc unexpected drop có thể là reverted quickly.
- Verify sau deploy — kiểm tra đó mã trạng thái và cuối đích với
curl -IL, một trình duyệt Network tab, hoặc một site crawler; watch cho chains và loops trong bulk.-Igửi mộtHEADyêu cầu — nếu bạn suspect đó máy chủ xử lýHEADvàGETdifferently, re-kiểm tra với một đơn giảncurl -L(mà dùngGET) hoặc của bạn crawler GET-based chế độ.
Đó chuyển hướng types, side by side
Đó five 3xx chuyển hướng codes tại một glance
| Code | Name | Vĩnh viễn hoặc temp? | HTTP phương thức được bảo toàn? | Google tín hiệu | Dùng điều này khi |
|---|---|---|---|---|---|
301 | Đã chuyển vĩnh viễn | Vĩnh viễn | Có thể thay đổi POST→GET | Mạnh (consolidates forward) | MỘT trang moved cho good — đó default chuyển hướng vĩnh viễn |
302 | Được tìm thấy | Tạm thời | Có thể thay đổi POST→GET | Yếu (thường vẫn giữ với old URL) | MỘT ngắn-term move — campaign, MỘT/B kiểm thử, tạm thời đổi |
303 | Xem tài nguyên khác | Tạm thời | Không (luôn forces GET) | Yếu / chưa xác định | Post/Chuyển hướng/Nhận sau một form submit; rare trong SEO |
307 | Chuyển hướng tạm thời | Tạm thời | Có | Yếu (= 302) | MỘT tạm thời move nơi đó phương thức/thân phản hồi phải được kept (forms, APIs); cũng seen với HSTS |
308 | Chuyển hướng vĩnh viễn | Vĩnh viễn | Có | Mạnh (= 301) | MỘT vĩnh viễn move nơi đó phương thức/thân phản hồi phải được kept |
Đó hai điều đó thực ra decide điều này
- Vĩnh viễn so với. tạm thời → determines đó tín hiệu canonicalization (mạnh so với. yếu) và liệu tìm kiếm cho thấy đó new hoặc old URL.
- Phương thức được bảo toàn hoặc không → 307/308 giữ đó original phương thức và thân phản hồi; 301/302
permit một client để đổi một
POSTcho mộtGETon đó way qua (một compatibility carryover cho older clients, theo đó Fetch Tiêu chuẩn); 303 luôn forcesGET. Irrelevant để xếp hạng, cốt yếu cho forms và APIs — dùng307/308khi đó phương thức và thân phản hồi phải survive đó hop.
Implementation các phương thức, strongest để weakest (vĩnh viễn)
| Phương thức | Nơi điều này chạy | Reliability |
|---|---|---|
308 / 301 (máy chủ hoặc edge) | Máy chủ / CDN | Best — không kết xuất dependency |
Meta refresh 0 | Trình duyệt | Đọc as vĩnh viễn, nhưng clumsy/chậm |
JavaScript (window.location) | Trình duyệt (sau render) | Weaker — phụ thuộc vào successful kết xuất |
| Crypto / link-chỉ fallback | — | Cuối cùng resort chỉ |
Fast facts
- MỘT single correct chuyển hướng không lose PageRank (Illyes, 2016).
- Google documents một 10-hop ceiling, nhưng khuyến nghị không hơn 3 và ít hơn 5 khi một chain không thể là avoided.
- Mueller 2014 và 2020 comments mô tả về five hops theo crawl; đó 2014 comment cũng described continuing đó rest sau đó. Treat cả hai as dated representative statements, không một hiện tại scheduling bảo đảm.
- Giữ các chuyển hướng ≥ 1 năm.
- 307 ≈ 302, 308 ≈ 301 cho Google — đó khác biệt là phương thức preservation.
- Chuyển hướng = chỉ một URL survives; canonical tag = several survive, một là được ưu tiên.
Các tài nguyên worth của bạn time
My writing
- 11 Types Of Các chuyển hướng & Của họ SEO Impact — my đầy đủ deep dive on mỗi chuyển hướng loại (301, 302, 303, 307, 308, meta refresh, JS, crypto, chains, loops), đó piece này hub condenses.
- HTTP Các mã trạng thái & Của họ SEO Impact — nơi các chuyển hướng fit trong đó toàn bộ 1xx–5xx status-code picture.
- Là Điều này OK để Xóa 301 Các chuyển hướng Sau một Năm? We Tested Điều này — my controlled kiểm thử of pulling năm-old các chuyển hướng (referring domains dropped; traffic mostly held).
- 301 so với. 302 Các chuyển hướng cho SEO: Mà Nên Bạn Dùng? — đó head-để-head, featuring my thử nghiệm nơi một 302 gây ra Google để drop đó old domain cho đó new một.
- MỘT Website Migration Takes Hơn MỘT Checklist Để Là Successful — các chuyển hướng trong đó context of một đầy đủ site move.
Từ khoảng đó ngành
- Các chuyển hướng và Google Search (Google) — đó canonical doc behind hầu hết of này hub claims.
- Cách HTTP Các mã trạng thái Ảnh hưởng Google Các crawler (Google) — 3xx crawler treatment và đó 10-hop limit.
- Làm Duplicate Nội dung Hurt SEO và AI Khả năng hiển thị trên tìm kiếm? (Bing) — đó hiện tại on-đó-record Microsoft take on các chuyển hướng so với. canonical tags.
- Redirections trong HTTP (MDN) — đó giao thức-cấp độ reference cho 3xx codes và phương thức/thân phản hồi xử lý.
- Google: Không PageRank dilution khi dùng 301, 302, hoặc 30x các chuyển hướng anymore (Search Engine Land) — đó origin of đó PageRank myth-correction.
- Google Search Bỏ qua Chuyển hướng Loops (Công cụ tìm kiếm Roundtable) — đó Mueller “essentially a broken link” (bản dịch) «essentially một hỏng link» quote on loops.
- Bing: Dùng 302s Cho URLs Đó Có thể Thay đổi Trong Hai Days, Nếu không Go 301 (Công cụ tìm kiếm Roundtable) — Fabrice Canel 301-so với-302 timing hướng dẫn.
- Đó các chuyển hướng dẫn cho SEO (Conductor Academy) — một solid đối thủ overview of đó chuyển hướng landscape.
Chuyển hướng hoặc canonical? Dùng đó survival kiểm thử
Đó hai các tín hiệu có thể point toward đó giống nhau được ưu tiên URL, nhưng they solve khác nhau các vấn đề.
Chuyển hướng khi đó nguồn URL nên dừng serving của nó own nội dung
Chọn một máy chủ-side chuyển hướng khi người dùng và các crawler requesting đó old URL nên
là đã gửi nơi nào đó khác. Dùng một vĩnh viễn code (301 hoặc 308) cho một lasting move và
một tạm thời code (302, 303, hoặc 307) khi đó nguồn là dự kiến để trả về.
Typical cases: một changed URL, đã hợp nhất trang, HTTP-để-HTTPS move, hoặc domain migration. Đó đích phải được một genuine tương đương; mass-chuyển hướng unrelated old URLs để đó homepage có thể là treated as một soft 404.
Canonicalize khi multiple URLs phải vẫn accessible
Chọn rel="canonical" khi duplicate hoặc near-duplicate variants vẫn cần để
trả về của họ own 200 các phản hồi, nhưng một URL nên là treated as được ưu tiên cho
lập chỉ mục. MỘT canonical là một hint, không navigation: người dùng vẫn on đó requested URL.
đây là cũng một hint để Google, không một rule — Google says
“indicating a canonical preference is a hint, not a rule,” (bản dịch) «indicating một canonical preference là một hint, không một rule,» và điều này có thể chọn một
khác nhau trang as canonical dựa trên other các tín hiệu.
Typical cases: hữu ích loại/filter variants, syndicated hoặc parameterized versions, hoặc duplicates đó không thể là đã xóa tuy vậy.
Không relevant replacement tồn tại
không force một chuyển hướng onto an unrelated trang chỉ để có nơi nào đó để gửi đó old URL — một catch-all hoặc homepage chuyển hướng cho nội dung với không real successor đọc as một soft 404 để Google. Nếu có không genuine tương đương, đó là một tín hiệu để leave đó decision để một deliberate 404/410 thay vì invent một đích.
Không gửi conflicting instructions
Nếu URL MỘT các chuyển hướng để B, B không nên canonicalize lại để MỘT. Giữ liên kết nội bộ và sitemaps aligned với đó surviving đích. Đó framework là đơn giản: một URL survives → chuyển hướng; several phải stay trực tiếp → canonical.
Prompt: audit một chuyển hướng map cho yếu destinations
Paste một chuyển hướng-map CSV với old URL, proposed đích, reason, old tiêu đề hoặc topic, đích tiêu đề hoặc topic, dự kiến permanence, và traffic/tín hiệu liên kết nếu khả dụng.
Review this proposed redirect map for relevance and implementation risk.
For each row:
1. Classify the destination as strong equivalent, plausible but needs review,
irrelevant/catch-all, self-redirect, chain risk, loop risk, missing destination,
or insufficient evidence.
2. Explain the classification using only the supplied old/destination topics and
URL evidence.
3. Flag many-to-one mappings to a homepage or broad category for manual review.
4. Check whether the intended permanence matches the proposed 3xx code when a code
column is present.
5. Do not invent a replacement URL. If no equivalent is supplied, recommend manual
mapping or an intentional 404/410 decision.
Return a table with old URL, destination, verdict, evidence, recommended action, and
priority. End with a summary of repeated rule patterns that could create chains or
loops.
DATA:
[PASTE REDIRECT MAP HERE]Human-review mỗi nội dung-sự tương đương judgment trước deploying đó map.
Tools cho planning và verifying các chuyển hướng
- Chuyển hướng Checker — quickly verify đó cuối status, mỗi hop, và đích cho một URL hoặc nhỏ batch sau deployment.
- Chuỗi chuyển hướng Mapper — diagnose multi-hop paths, see điều gì thay đổi tại mỗi hop, và export flattened cleanup rules cho phổ biến máy chủ các nền tảng.
- Bulk HTTP Mã trạng thái Checker — validate một lớn hơn chuyển hướng inventory, filter tạm thời hoặc multi-hop kết quả, và export evidence.
- Chuyển hướng Map Builder — plan old-để-new mappings, giữ unmatched URLs và một danh sách URL trả về 410 rõ ràng, và export nền tảng-oriented rules. Của nó suggestions vẫn require nội dung-sự tương đương review.
- Trình duyệt DevTools → Network — verify đó document phản hồi 3xx code và
Locationheader trong khi reproducing trình duyệt-cụ thể behavior.
Tự kiểm tra: HTTP Các chuyển hướng
Five nhanh các câu hỏi on cách các chuyển hướng hoạt động và cách các công cụ tìm kiếm treat them. Pick an câu trả lời cho mỗi, thì kiểm tra.
Nhật ký thay đổi
Đã cập nhật 22 thg 8, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 8 thg 8, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 19 thg 7, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.
Đã cập nhật 18 thg 7, 2026.
Tóm tắt biên tập và chi tiết thay đổi đã ghi nhận.Chi tiết thay đổi
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
-
Ghi chú thay đổi chi tiết hiện chỉ có bằng tiếng Anh.
Không thể so sánh đầy đủ — không có bản lưu trước đó cho lần sửa đổi này.