Bạn vừa sửa lại đường dẫn một bài viết cho gọn, vài tuần sau bài tụt khỏi Google và lượt truy cập giảm hẳn?
Tôi là Thái Doãn Kiên, CEO SEODO. Khi audit website vừa đổi URL hay chuyển tên miền, tôi hay gặp bốn lỗi: URL cũ trả 404, chuyển hướng qua hai ba bước mới tới đích, liên kết nội bộ và sitemap vẫn trỏ về địa chỉ cũ, hoặc dùng 302 cho một thay đổi vĩnh viễn.
Đổi URL không đáng sợ nếu bạn làm đúng thứ tự, vì mọi lỗi kể trên đều kiểm tra được trước khi Google kịp thu thập lại. Bạn sẽ thấy Google xử lý từng loại chuyển hướng ra sao, cách tạo redirect 301 trên WordPress và máy chủ, cùng quy trình 7 bước tôi và đội SEODO dùng mỗi khi đổi URL một bài viết.
Tóm tắt nhanh
- Redirect 301 là gì: redirect 301 là phản hồi của máy chủ báo một URL đã chuyển vĩnh viễn sang địa chỉ khác, trình duyệt và Googlebot tự đi tới địa chỉ mới.
- Google xử lý thế nào: Google coi 301 là tín hiệu mạnh để chọn URL đích làm URL chính tắc, và tài liệu Search Central không đưa ra tỷ lệ phần trăm sức mạnh nào bị mất.
- Vĩnh viễn và tạm thời: 301 và 308 là vĩnh viễn, 302, 303 và 307 là tạm thời. Google xử lý 308 như 301 và 307 như 302.
- Khi nào không nên dùng: trang đã xoá mà không có bản thay thế tương đương thì để 404 hoặc 410, còn hai URL đều cần truy cập được thì dùng thẻ canonical.
- Đổi URL một bài viết: làm đủ 7 bước, từ ghi số liệu trước, chuyển hướng một bước, sửa liên kết nội bộ và sitemap đến theo dõi trong Search Console.
- Chuyển tên miền: giữ redirect càng lâu càng tốt, thường ít nhất 1 năm theo tài liệu Site moves của Google.
- Kiểm tra: một URL đúng chỉ có 1 phản hồi 301 rồi tới 1 phản hồi 200, chuỗi dài hơn hay vòng lặp đều phải sửa.
1. Redirect 301 là gì?
Hiểu đúng định nghĩa giúp bạn đọc được mọi báo cáo về chuyển hướng mà không nhầm 301 với lời hứa giữ nguyên thứ hạng.
Redirect 301 là mã trạng thái HTTP báo một URL đã chuyển vĩnh viễn sang địa chỉ mới.
- Ai thấy: trình duyệt và Googlebot đều tự đi tới địa chỉ mới, người dùng gần như không nhận ra.
- Thời điểm: chuyển hướng xảy ra trước khi trang hiển thị, trong 1 vòng hỏi và đáp với máy chủ.
- Dấu hiệu đúng: 1 phản hồi 301 có header location, tiếp theo là 1 phản hồi 200 ở URL đích.
301 không phải công cụ tăng thứ hạng. Nó chỉ báo cho người dùng và Google biết nội dung đã ở địa chỉ khác.
Redirect 301 là phản hồi của máy chủ báo rằng một URL đã chuyển vĩnh viễn sang địa chỉ khác. Khi nhận phản hồi này, trình duyệt và Googlebot tự đi tới địa chỉ mới mà người dùng không phải bấm gì. Nếu bạn mới bắt đầu, bài SEO là gì cho thấy chuyển hướng nằm ở đâu trong công việc SEO.

Chữ “vĩnh viễn” báo cho Google rằng địa chỉ cũ sẽ không quay lại. Theo tài liệu Redirects and Google Search (cập nhật 14/04/2026), vì vậy Google dùng 301 làm tín hiệu để chọn địa chỉ mới hiển thị trên kết quả tìm kiếm. Tài liệu không định nghĩa 301 là “chuyển toàn bộ sức mạnh SEO” như nhiều nơi vẫn viết.
1.1. Redirect là gì và hoạt động thế nào?
Redirect, hay chuyển hướng, là cách máy chủ báo cho trình duyệt rằng nội dung bạn yêu cầu đang nằm ở một URL khác và đưa bạn tới đó tự động. Quá trình này diễn ra trong 3 bước. Đầu tiên, trình duyệt gửi yêu cầu tới URL A. Tiếp theo, máy chủ trả về một mã nhóm 3xx kèm header Location chứa URL B. Cuối cùng, trình duyệt tự gửi yêu cầu mới tới URL B và hiển thị trang đó.

Vì mỗi bước là một yêu cầu HTTP riêng, tiêu chí đo được của một redirect đúng rất rõ ràng: chỉ có 1 phản hồi 3xx rồi tới 1 phản hồi 200. Nếu bạn thấy hai, ba phản hồi 3xx nối nhau trước khi tới trang có nội dung, đó là chuỗi chuyển hướng và cần sửa.
1.2. 301 Moved Permanently nghĩa là gì?
301 là mã trạng thái HTTP thuộc nhóm 3xx, còn “Moved Permanently” là dòng mô tả đi kèm, nghĩa là “đã chuyển vĩnh viễn”. Khi ai đó hỏi “301 là gì” hay “301 moved permanently là gì”, câu trả lời ngắn nhất là máy chủ báo trang đã dọn hẳn sang địa chỉ ghi trong header location. Trình duyệt tới đó và lưu lại địa chỉ mới.

Bạn tự kiểm tra được bằng lệnh curl trong Terminal. Ví dụ dưới đây là kết quả thật khi gọi một đường dẫn cũ trên seodo.vn đang được chuyển hướng 301 về đúng bài viết hiện tại:
$ curl -I https://seodo.vn/redirect-301/
HTTP/2 301
x-redirect-by: Rank Math
location: https://seodo.vn/redirect-301-la-gi/
Tiêu chí đo được là phản hồi phải có dòng HTTP/2 301 (hoặc HTTP/1.1 301) và header location trỏ đúng URL đích.
1.3. Ví dụ chuyển hướng vĩnh viễn thường gặp
Ba tình huống bạn gặp nhiều nhất đều là thay đổi vĩnh viễn, nên đều dùng 301. Thứ nhất là chuyển từ http sang https sau khi cài chứng chỉ SSL. Thứ hai là thống nhất một phiên bản tên miền, ví dụ bản không www chuyển về bản có www hoặc ngược lại. Thứ ba là một bài viết đổi đường dẫn cho ngắn gọn hơn.

| URL nguồn | Mã trạng thái | URL đích |
| http://noithatabc.example/sofa-da/ | 301 | https://noithatabc.example/sofa-da/ |
| https://www.noithatabc.example/sofa-da/ | 301 | https://noithatabc.example/sofa-da/ |
| https://noithatabc.example/cach-chon-sofa-da-cho-phong-khach-nho/ | 301 | https://noithatabc.example/chon-sofa-da/ |
Tiêu chí cho cả ba ví dụ là mỗi URL nguồn tới đích trong đúng 1 bước. Lỗi hay gặp là bản http có www phải đi qua bản https có www rồi mới tới bản https không www, tức là 2 bước thay vì 1.
2. Google xử lý redirect 301 như thế nào?
Biết Google làm gì với URL cũ và URL đích giúp bạn đặt kỳ vọng đúng, không tin vào những con số phần trăm không có nguồn.
Googlebot đi theo redirect 301, chỉ xử lý nội dung của URL đích, và coi 301 là tín hiệu mạnh để chọn URL đích làm URL chính tắc.
- Giới hạn đi theo: Googlebot theo tối đa 10 bước chuyển hướng.
- Thứ hạng: có thể dao động tạm thời trong quá trình chuyển, Google không công bố tỷ lệ sức mạnh bị mất.
- Thời gian: không có số ngày cố định cho một URL, website nhỏ đến vừa có thể mất vài tuần để phần lớn trang được chuyển.
Cách đo đúng là so số liệu của URL đích trong Search Console trước và sau khi chuyển.
Khi gặp redirect 301, Googlebot thu thập URL cũ, đọc header location rồi đi tiếp tới URL đích. Theo tài liệu HTTP status codes and network errors (cập nhật 04/02/2026), Google dùng 301 như một tín hiệu mạnh rằng URL đích là trang cần xử lý, và trình thu thập theo tối đa 10 bước chuyển hướng trong một chuỗi.

Vì vậy, khi chuẩn bị chuyển hướng, việc cần chăm chút là trang đích, vì nội dung còn sót lại ở URL cũ không được tính.
2.1. 301 là tín hiệu để URL đích được chọn làm URL chính tắc
Theo tài liệu Redirects and Google Search, với 301 và 308, URL đích được dùng làm tín hiệu để chọn URL chính tắc, tức địa chỉ Google hiển thị trên kết quả tìm kiếm. Nội dung Google nhận được từ URL chuyển hướng bị bỏ qua, chỉ nội dung URL đích được xử lý. Trong báo cáo Lập chỉ mục trang của Search Console, URL nguồn sẽ nằm ở lý do “Trang có lệnh chuyển hướng” và không được lập chỉ mục.

Tiêu chí đo được: sau khi Google thu thập lại, mở công cụ Kiểm tra URL cho URL đích. Mục Lập chỉ mục trang phải hiện “URL chính tắc do Google chọn” trùng với URL đích. Nếu Google vẫn chọn URL cũ hay một URL khác, bạn xem lại thẻ canonical, sitemap và liên kết nội bộ, vì các tín hiệu này đang trỏ mỗi nơi một hướng.
2.2. Redirect 301 có làm mất thứ hạng hay sức mạnh liên kết không?
Câu trả lời trung thực là tài liệu Search Central không đưa ra tỷ lệ phần trăm sức mạnh liên kết bị mất qua 301. Những con số như “giữ 90 đến 99%” hay “mất 10 đến 15%” bạn đọc trên mạng đều không có nguồn từ Google. Điều tài liệu Site moves with URL changes (cập nhật 20/08/2026) nói rõ là thứ hạng có thể dao động tạm thời trong quá trình chuyển.

Vì không có con số chung, bạn phải tự đo trên website của mình. Cách tôi vẫn làm là mở báo cáo Hiệu suất, chọn chế độ so sánh 28 ngày trước và 28 ngày sau khi chuyển, rồi xem lượt nhấp và lượt hiển thị của URL đích so với URL cũ. Rủi ro giảm rõ rệt khi trang đích có nội dung tương đương và chuyển hướng chỉ có một bước.
2.3. Bao lâu Google nhận ra URL đã chuyển?
Với một URL, Google chỉ thấy redirect khi thu thập lại URL cũ, nên không có số ngày cố định. Với cả website, tài liệu Site moves cho biết website nhỏ đến vừa có thể mất vài tuần để phần lớn trang được chuyển, website lớn thì lâu hơn.

Trong giai đoạn này, URL cũ có thể vẫn hiện trên kết quả tìm kiếm rồi mờ dần, vì Google theo dõi cả URL nguồn và URL đích. Mỗi tuần, bạn dùng Kiểm tra URL cho vài URL cũ chính, xem đã chuyển sang trạng thái “Trang có lệnh chuyển hướng” chưa. Muốn hiểu vì sao một trang được hay không được đưa vào chỉ mục, bài Google index giải thích cách Google lập chỉ mục và những lý do trang bị loại.
3. Phân biệt redirect 301, 302, 307, 308 và chuyển hướng phía trình duyệt
Chọn đúng mã ngay từ đầu giúp bạn không phải sửa lại hàng trăm rule sau vài tháng.
301 và 308 là chuyển hướng vĩnh viễn, 302, 303 và 307 là tạm thời. Google xử lý 308 như 301 và 307 như 302.
- Phía máy chủ (server-side): mã HTTP 3xx, Google hiểu chắc chắn nhất, nên ưu tiên dùng.
- Phía trình duyệt (client-side): meta refresh và JavaScript, chỉ dùng khi không cấu hình được máy chủ.
- Meta refresh 0 giây: Google coi là vĩnh viễn, có độ trễ thì coi là tạm thời.
Mã 304 không thuộc nhóm chuyển hướng, nó chỉ báo nội dung chưa đổi.
Chuyển hướng chia thành hai nhóm theo nơi xảy ra. Chuyển hướng phía máy chủ (server-side) là khi máy chủ trả mã 3xx trước khi gửi nội dung, còn chuyển hướng phía trình duyệt (client-side) là khi trang đã tải về rồi mới dùng meta refresh hoặc JavaScript để chuyển đi. Bảng dưới đây tổng hợp đúng theo tài liệu Redirects and Google Search.

| Loại | Cách triển khai | Vĩnh viễn hay tạm thời | Tín hiệu chính tắc | Dùng khi nào |
| 301 | Máy chủ | Vĩnh viễn | Có | Đổi URL, chuyển tên miền, gộp trang |
| 308 | Máy chủ | Vĩnh viễn | Có | Như 301, cần giữ phương thức POST |
| Meta refresh 0 giây | Thẻ meta trong HTML | Vĩnh viễn | Có | Không cấu hình được máy chủ |
| HTTP refresh 0 giây | Header refresh | Vĩnh viễn | Có | Không cấu hình được rule chuyển hướng |
| 302 | Máy chủ | Tạm thời | Không | Bảo trì, khuyến mãi có hạn |
| 303 | Máy chủ | Tạm thời | Không | Chuyển sau khi gửi form |
| 307 | Máy chủ | Tạm thời | Không | Như 302, cần giữ phương thức |
| Meta refresh trên 0 giây | Thẻ meta trong HTML | Tạm thời | Không | Trang thông báo có đếm ngược |
| JavaScript | Mã chạy trên trình duyệt | Vĩnh viễn nếu Google kết xuất được | Có thể, tuỳ kết xuất | Lựa chọn cuối cùng |
Bảng 301 và 302 cũ hay ghi 302 “không có tác động SEO”, nhưng đó là cách nói sai. Googlebot vẫn đi theo 302, chỉ khác là không dùng nó làm tín hiệu chọn URL chính tắc. Vì vậy, khác biệt thật nằm ở câu hỏi Google nên hiển thị URL nào, không nằm ở chuyện có “truyền” được gì hay không.
3.1. Nhóm vĩnh viễn: 301 và 308
308 Permanent Redirect giống 301 ở chỗ đều là chuyển hướng vĩnh viễn, và tài liệu của Google ghi 308 tương đương 301. Khác biệt duy nhất là 308 giữ nguyên phương thức HTTP, nghĩa là yêu cầu gửi bằng POST vẫn là POST khi tới URL đích, theo MDN Web Docs. Với 301, một số trình duyệt có thể đổi POST thành GET.

Tiêu chí đo được: trang HTML thông thường như bài viết, sản phẩm, danh mục dùng 301. Chỉ dùng 308 khi URL nhận dữ liệu gửi bằng POST, ví dụ một điểm cuối API hoặc trang xử lý form, vì đổi sang GET sẽ làm mất dữ liệu người dùng gửi lên.
3.2. Nhóm tạm thời: 302, 303 và 307
Với chuyển hướng tạm thời, Googlebot vẫn đi theo nhưng không dùng redirect làm tín hiệu chính tắc, nên URL nguồn có thể vẫn được lập chỉ mục. Tài liệu HTTP status codes ghi 302 là tín hiệu yếu rằng URL đích cần được xử lý, và 307 tương đương 302. 302 hay 303 không phải “lỗi”, chúng là công cụ đúng cho thay đổi có ngày kết thúc.

Tiêu chí đo được: chỉ dùng 302 hoặc 307 khi bạn chắc chắn URL nguồn sẽ quay lại, ví dụ trang đang bảo trì hoặc trang danh mục tạm chuyển sang trang khuyến mãi đến hết tháng. Khi tạo rule, ghi sẵn ngày gỡ vào phần ghi chú để không ai quên rule đó chạy mãi.
3.3. Meta refresh và JavaScript redirect
Theo tài liệu Redirects and Google Search, thứ tự Google hiểu đúng nhất là chuyển hướng phía máy chủ, rồi meta refresh, rồi JavaScript, cuối cùng là crypto redirect. Crypto redirect là trang chỉ ghi “nội dung đã chuyển” kèm một liên kết, Google có thể không nhận ra. Meta refresh 0 giây được coi là vĩnh viễn, còn có độ trễ thì coi là tạm thời.

Thẻ meta refresh đặt trong phần head của trang, có dạng như sau:
<meta http-equiv="refresh" content="0; url=https://noithatabc.example/moi/">
JavaScript redirect thì rủi ro hơn, vì Google chỉ chạy JavaScript khi kết xuất trang, và nếu kết xuất thất bại thì Google có thể không bao giờ thấy lệnh chuyển hướng. Tiêu chí đo được: chỉ dùng meta refresh hoặc JavaScript khi không có quyền cấu hình máy chủ và không cài được plugin, còn lại luôn dùng 301 từ máy chủ.
3.4. Mã 304 không phải chuyển hướng
304 Not Modified báo rằng nội dung không đổi so với lần trình duyệt hoặc Googlebot tải trước đó, nên có thể dùng lại bản đã lưu trong bộ nhớ đệm. Nó không đưa người dùng sang URL khác, vì vậy không thuộc nhóm chuyển hướng dù cùng mang số 3xx.

Tiêu chí đo được: trong DevTools, dòng có Status 304 không có header location. Mã 304 thường xuất hiện ở file CSS, JavaScript, ảnh khi tải lại trang. Đó là dấu hiệu bộ nhớ đệm đang chạy tốt, không phải lỗi cần sửa.
4. Khi nào nên dùng redirect 301, khi nào không?
Mỗi tình huống có một công cụ đúng, và chọn đúng giúp website bớt hẳn những chuyển hướng thừa.
Dùng redirect 301 khi nội dung đã có địa chỉ mới vĩnh viễn và trang đích trả lời đúng nhu cầu của trang cũ.
- 301: đổi đường dẫn, gộp bài, chuyển HTTPS, thống nhất www, chuyển tên miền.
- 302 hoặc 307: thay đổi có ngày quay lại.
- 404 hoặc 410: trang đã xoá và không có bản thay thế tương đương.
- Thẻ canonical: cả hai URL vẫn cần truy cập được.
Câu hỏi quyết định là người dùng còn cần vào URL cũ không, và có trang nào thay thế đúng nghĩa không.
Google không cấm chuyển hướng, nhưng phân biệt rõ chuyển hướng hợp lệ và chuyển hướng lừa người dùng. Mục Sneaky redirects trong Spam policies (cập nhật 28/08/2026) liệt kê các lý do hợp lệ như chuyển website sang địa chỉ mới và gộp nhiều trang thành một. Bảng quyết định dưới đây giúp bạn chọn nhanh cho từng tình huống.

| Tình huống | Nên dùng | Vì sao |
| Đổi đường dẫn bài viết hoặc sản phẩm | 301 | Nội dung còn nguyên, chỉ đổi địa chỉ vĩnh viễn |
| Gộp 2 bài trùng chủ đề | 301 bài bị gộp về bài giữ lại | Google liệt kê gộp trang là lý do chuyển hướng hợp lệ |
| Trang bảo trì vài ngày | 302 hoặc 307 | URL nguồn sẽ quay lại |
| Sản phẩm ngừng bán, không có mẫu thay thế | 404 hoặc 410 | Không có trang tương đương để chuyển tới |
| Bản in, URL có tham số lọc, cùng sản phẩm nhiều màu | Thẻ canonical | Người dùng vẫn cần vào được các URL đó |
4.1. 6 tình huống nên dùng redirect 301
Có 6 tình huống tôi gặp thường xuyên nhất ở các dự án. Thứ nhất là đổi đường dẫn bài viết hoặc sản phẩm, kể cả việc thêm hay bỏ dấu “/” cuối URL. Thứ hai là xoá trang nhưng có trang thay thế cùng nội dung. Thứ ba là gộp 2 bài trùng chủ đề đang tranh nhau một từ khoá, tình trạng gọi là keyword cannibalization. Ba tình huống còn lại là chuyển HTTP sang HTTPS, thống nhất www và không www, và chuyển tên miền.

Tiêu chí đo được cho cả 6 tình huống: trang đích phải trả lời đúng nhu cầu của trang cũ, nghĩa là cùng chủ đề hoặc cùng loại sản phẩm. Chuyển bài “cách chọn sofa da” về trang danh mục ghế văn phòng chỉ vì cùng là nội thất là chuyển về trang gần đúng, và người đọc sẽ thoát ngay khi không thấy thứ họ tìm.
4.2. Khi nào để trang trả 404 hoặc 410 thay vì chuyển hướng
Trang đã xoá mà không có bản thay thế tương đương thì nên để trả 404 hoặc 410. Theo tài liệu HTTP status codes, URL trả mã 4xx sẽ bị gỡ khỏi chỉ mục nếu trước đó đã được lập chỉ mục, nên bạn không cần lo trang đã xoá còn nằm trên Google mãi. Nếu cần hiểu từng nguyên nhân gây 404 và cách làm trang lỗi thân thiện hơn, bài lỗi 404 có đủ các cách khắc phục và công cụ kiểm tra.

Kinh nghiệm của SEODO là chuyển hướng hàng loạt URL đã xoá về trang chủ dễ bị Search Console báo “Lỗi 404 mềm” và làm người dùng lạc, vì trang chủ không trả lời điều họ tìm. Đây là quan sát từ các dự án, không phải câu chữ trong tài liệu redirect. Tiêu chí đo được: 0 URL đã xoá chuyển hướng về trang chủ.
4.3. Redirect 301 khác thẻ canonical ở đâu?
Theo tài liệu How to specify a canonical URL (cập nhật 10/07/2026), redirect và rel=”canonical” đều là tín hiệu mạnh để chọn URL chính tắc. Khác ở chỗ URL mang nội dung trùng lặp còn giữ hay bỏ. Redirect chỉ dùng khi bạn bỏ hẳn trang trùng. Canonical dùng khi cả hai URL vẫn cần truy cập được, ví dụ bản in, URL có tham số lọc hay cùng một sản phẩm nhiều màu.

Tiêu chí đo được chỉ là một câu hỏi: người dùng còn cần vào URL cũ không. Có thì dùng thẻ canonical, không thì dùng 301. Đừng đặt hai tín hiệu trỏ về hai URL khác nhau, chẳng hạn URL A chuyển hướng sang B trong khi canonical của B lại trỏ về C, vì Google sẽ phải đoán và có thể chọn một URL bạn không muốn.
5. Cách tạo redirect 301 trên WordPress, Apache và Nginx
Chọn đúng nơi đặt rule giúp bạn quản lý chuyển hướng ở một chỗ duy nhất và tránh hai rule đá nhau.
Website WordPress tạo redirect 301 bằng plugin SEO hoặc plugin chuyển hướng, máy chủ Apache dùng file .htaccess, máy chủ Nginx dùng lệnh return 301.
- Rank Math: module Redirections, hỗ trợ 301, 302, 307.
- Plugin riêng: Redirection hỗ trợ regex, 301 Redirects bản miễn phí thì không.
- Máy chủ: sao lưu cấu hình trước, kiểm tra cú pháp sau khi sửa.
Mỗi website chỉ nên dùng 1 nơi quản lý redirect cho cùng một loại URL.
Cách tạo redirect 301 phụ thuộc vào việc bạn có quyền gì trên website. Người chỉ vào được trang quản trị WordPress nên dùng plugin, còn người quản trị máy chủ đặt rule thẳng trên Apache hoặc Nginx, chạy nhanh hơn vì không phải đi qua WordPress.

| Cách | Hợp với ai | Ưu điểm | Rủi ro |
| Rank Math Redirections | Website WordPress đã dùng Rank Math | Không cần code, có cột đếm lượt chuyển | Tắt plugin là mất mọi rule |
| Plugin Redirection, 301 Redirects | Website không dùng Rank Math | Có nhật ký 404, Redirection có regex | Chạy 2 plugin cùng lúc dễ chồng rule |
| File .htaccess | Máy chủ Apache, LiteSpeed | Chạy trước WordPress, nhanh | Sai cú pháp có thể làm sập website |
| Nginx return 301 | Máy chủ Nginx, VPS | Nhanh, rõ ràng | Cần quyền máy chủ và tải lại cấu hình |
Nếu website đang dùng Yoast SEO, lưu ý trình quản lý chuyển hướng của Yoast thuộc bản trả phí, nên bạn có thể kết hợp với một plugin chuyển hướng riêng. Tính năng giữa bản miễn phí và trả phí của các plugin thay đổi theo phiên bản, hãy xem lại trang chính thức trước khi chọn.
5.1. Dùng module Redirections của Rank Math
Với website dùng Rank Math, bạn bật module Redirections tại Rank Math SEO, Dashboard, Modules. Module này chỉ hiện khi plugin ở chế độ Advanced. Sau đó vào Rank Math SEO, Redirections, bấm Add New. Nhập URL cũ vào ô Source URLs, URL mới vào ô Destination URL và chọn 301 Permanent Move ở mục Redirection Type, theo hướng dẫn “Setting up Redirections” của Rank Math.

Rank Math hỗ trợ 3 loại chuyển hướng 301, 302, 307, cùng hai mã trạng thái 410 và 451 cho trang đã xoá. Tính năng nhập và xuất CSV thuộc bản PRO. Trong phần cài đặt Redirections còn có tuỳ chọn Auto Post Redirect tự tạo 301 khi bạn đổi slug, và Debug Redirections để xem rule nào đang chạy. Tiêu chí đo được: sau khi lưu, URL nguồn trả 301 một bước tới URL đích.
5.2. Plugin Redirection và các plugin chuyển hướng khác
Khi website không dùng Rank Math, bạn có hai lựa chọn phổ biến trên WordPress.org. Plugin 301 Redirects của WebFactory có hơn 300.000 lượt cài đang hoạt động, hỗ trợ 301, 302, 307 và nhật ký 404, nhưng bản miễn phí không có regex hay wildcard. Plugin Redirection có hơn 2 triệu lượt cài, hỗ trợ đầy đủ regex nên hợp khi bạn đổi cấu trúc permalink hàng loạt.

Tiêu chí đo được: website chỉ dùng 1 công cụ quản lý redirect, không chạy 2 plugin chuyển hướng cùng lúc. Hai plugin cùng xử lý một URL dễ tạo chuỗi hoặc vòng lặp mà giao diện từng plugin không cho thấy.
5.3. File .htaccess trên máy chủ Apache
Trên máy chủ Apache hoặc LiteSpeed, file .htaccess nằm ở thư mục gốc của website và được đọc trước khi WordPress chạy. Có hai cách viết hay dùng: lệnh Redirect của module mod_alias cho từng URL, và khối RewriteRule để chuyển toàn bộ http sang https.

# Chuyển một URL
Redirect 301 /duong-dan-cu/ https://noithatabc.example/duong-dan-dich/
# Chuyển toàn bộ http sang https
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://noithatabc.example/$1 [L,R=301]
Tiêu chí đo được gồm 3 việc: sao lưu .htaccess trước khi sửa, đặt rule chuyển hướng phía trên khối # BEGIN WordPress, và chạy lại curl -I sau khi lưu để thấy đúng 1 dòng 301. Một ký tự sai trong file này có thể làm website báo lỗi 500. Có bản sao lưu thì vài giây là khôi phục xong.
5.4. Máy chủ Nginx
Nginx không đọc file .htaccess, nên rule đặt trong file cấu hình của website. Lệnh return 301 là cách gọn và rõ nhất cho cả một URL lẫn toàn bộ http sang https.

location = /duong-dan-cu/ {
return 301 https://noithatabc.example/duong-dan-dich/;
}
server {
listen 80;
server_name noithatabc.example www.noithatabc.example;
return 301 https://noithatabc.example$request_uri;
}
Tiêu chí đo được: chạy nginx -t và thấy dòng báo cú pháp hợp lệ (syntax is ok, test is successful) trước khi tải lại cấu hình. Bỏ qua bước này, một dấu ngoặc thiếu có thể khiến Nginx không khởi động lại được.
5.5. Chuyển hướng cả tên miền ở hosting hoặc nhà đăng ký
Nhiều hosting dùng cPanel có mục Redirects, và một số nhà đăng ký tên miền có tính năng chuyển tiếp tên miền. Cách này hợp khi bạn chỉ cần chuyển cả tên miền cũ sang tên miền mới mà không muốn sửa máy chủ.

Tiêu chí đo được: chọn kiểu Permanent (301), bật tuỳ chọn giữ đường dẫn (thường gọi là wildcard redirect) để mỗi URL cũ về đúng URL tương ứng trên tên miền mới, không dồn tất cả về trang chủ.
6. Quy trình 7 bước đổi URL bài viết bằng redirect 301
Làm theo đúng thứ tự giúp bạn giảm rủi ro mất traffic mỗi khi đổi đường dẫn một bài viết đang có lượt truy cập.
Đổi URL an toàn gồm 7 bước chia làm 3 nhóm:
- Chuẩn bị (bước 1 và 2): ghi số liệu 28 ngày của URL cũ, kiểm tra slug đích chưa bị chuyển hướng ngược.
- Đổi và dọn (bước 3 đến 5): chuyển hướng 301 một bước, sửa liên kết nội bộ, cập nhật sitemap và canonical.
- Kiểm tra và theo dõi (bước 6 và 7): kiểm tra chuỗi và vòng lặp, so số liệu sau 4 và 8 tuần.
Bỏ bước 2 là nguyên nhân hay gặp nhất của vòng lặp chuyển hướng.
Đổi URL an toàn gồm ghi số liệu trước, chuyển hướng 301 một bước, sửa liên kết nội bộ, cập nhật sitemap và canonical, kiểm tra chuỗi và vòng lặp, rồi theo dõi trong Search Console. Đây là quy trình theo cách triển khai của SEODO khi viết lại bài cũ, dựa trên các việc tài liệu Site moves khuyên làm. Đổi slug chỉ mất vài giây, các bước còn lại mới quyết định bài có giữ được lượt truy cập.

6.1. Nhóm 1: Chuẩn bị trước khi đổi slug (2 bước)
Hai bước đầu làm trước khi bạn chạm vào slug. Chúng giúp bạn có số liệu để so sánh và chặn trước vòng lặp chuyển hướng.
Bước 1: Ghi lại số liệu và liên kết của URL cũ
Bạn cần một mốc để biết sau khi đổi URL, bài có giữ được số liệu cũ hay không. Mở báo cáo Hiệu suất trong Search Console, lọc theo trang là URL cũ, chọn 28 ngày gần nhất. Ghi lại 3 chỉ số lượt nhấp, lượt hiển thị và vị trí trung bình. Đồng thời, lấy danh sách các trang đang trỏ link về URL cũ từ báo cáo Liên kết hoặc một công cụ crawl.

Tiêu chí đạt: có đủ 3 chỉ số 28 ngày và danh sách trang trỏ link về URL cũ, lưu vào một bảng tính.
Bước 2: Kiểm tra slug đích chưa bị chuyển hướng ngược
Bước này hay bị bỏ qua. Nếu trước đây bạn từng đổi bài từ slug mới sang slug cũ, có thể vẫn còn một rule đang chuyển slug đích về URL cũ. Khi bạn đổi lại, hai rule sẽ đá nhau và tạo vòng lặp.

Tiêu chí đạt: chạy curl -I với slug đích, kết quả phải là 404 (chưa có) hoặc 200 đúng là chính bài bạn đang đổi URL. Nếu slug đích đang trả 301 về URL cũ thì xoá rule đó trước.
6.2. Nhóm 2: Đổi slug và dọn liên kết (3 bước)
Ba bước tiếp theo làm liền trong cùng một lần, vì để cách quãng thì người dùng và Googlebot sẽ đi qua chuyển hướng nhiều hơn mức cần.
Bước 3: Sửa slug và tạo chuyển hướng vĩnh viễn một bước
Sau khi đổi slug, tạo redirect 301 từ URL cũ sang URL mới, hoặc để Rank Math tự tạo nếu đã bật Auto Post Redirect. Phần cần làm kỹ hơn là các rule cũ. Nếu trước đây đã có rule chuyển B về A, giờ A lại chuyển sang C, bạn sẽ có chuỗi B sang A sang C.

Tiêu chí đạt: URL cũ tới đích sau đúng 1 phản hồi 301, và mọi rule cũ đang trỏ về URL cũ được sửa để trỏ thẳng về URL đích. Tài liệu Site moves cũng khuyên chuyển hướng thẳng tới đích cuối cùng, không để chuỗi.
Bước 4: Sửa liên kết nội bộ đang trỏ về URL cũ
Redirect giúp người bấm link cũ vẫn tới đúng chỗ, nhưng mỗi lần như vậy là thêm một yêu cầu HTTP. Tài liệu Site moves khuyên đổi liên kết nội bộ từ URL cũ sang URL đích. Dùng Screaming Frog, lọc Response Codes theo Redirection (3xx), chọn URL cũ và xem tab Inlinks để biết những trang nào đang trỏ về nó.

Tiêu chí đạt: 0 liên kết nội bộ trỏ tới URL có mã 3xx khi crawl lại. Nhớ sửa cả menu, footer, nút CTA và widget, vì chúng lặp trên mọi trang. Tìm và thay hàng loạt trong cơ sở dữ liệu thì sao lưu trước. Bài internal link có checklist 12 việc tối ưu liên kết nội bộ, kèm cách kiểm tra link bằng Search Console và Screaming Frog.
Bước 5: Cập nhật sitemap và thẻ canonical
Tài liệu Build and submit a sitemap của Google khuyên chỉ đưa vào sitemap những URL bạn muốn hiển thị trên kết quả tìm kiếm. URL cũ đã chuyển hướng thì không còn thuộc nhóm đó.

Tiêu chí đạt: sitemap chỉ chứa URL trả 200 và muốn hiện trên Google, 0 URL 3xx. Thẻ canonical của bài trỏ về chính URL đích. Với WordPress dùng Rank Math, sitemap tự cập nhật khi đổi slug, bạn chỉ cần mở lại file sitemap bài viết để chắc chắn.
6.3. Nhóm 3: Kiểm tra và theo dõi (2 bước)
Hai bước cuối xác nhận mọi thứ chạy đúng và theo dõi đến khi Google thay URL cũ bằng URL đích trên kết quả tìm kiếm.
Bước 6: Kiểm tra mã trạng thái, chuỗi và vòng lặp
Một bài viết thường có 4 đến 8 biến thể URL mà người dùng hay bot có thể gọi tới: bản http, bản có www, bản có và không có dấu “/” cuối. Bạn cần thử từng biến thể của URL cũ, vì lỗi thường nằm ở biến thể ít ai nghĩ tới.

Tiêu chí đạt: URL cũ trả 301, URL đích trả 200, chuỗi tối đa 1 bước cho redirect bạn tự tạo. Tài liệu Site moves cho phép lý tưởng không quá 3 bước và dưới 5 khi không tránh được, nhưng với một bài viết thì 1 bước là làm được. Sau đó chạy Kiểm tra URL đang hoạt động cho URL đích trong Search Console và yêu cầu lập chỉ mục.
Bước 7: Theo dõi và giữ redirect lâu dài
SEODO thường đặt hai mốc theo dõi sau 4 tuần và 8 tuần, so số liệu URL đích với mốc ở Bước 1. Đây là mốc theo dõi theo kinh nghiệm của SEODO, không phải thời gian Google cam kết, vì như đã nói ở mục 2.3, Google nhận redirect theo nhịp thu thập lại.

Tiêu chí đạt: URL cũ chuyển sang lý do “Trang có lệnh chuyển hướng” trong báo cáo Lập chỉ mục trang, và lượt nhấp của URL đích tiến dần về mức cũ. Giữ rule chuyển hướng lâu dài, không xoá khi URL cũ đã có backlink trỏ về.
Tóm tắt 7 bước
| Bước | Việc làm | Công cụ | Đạt khi |
| 1. Ghi số liệu | Lưu 3 chỉ số 28 ngày và danh sách trang trỏ link | Search Console, công cụ crawl | Có bảng mốc để so sánh |
| 2. Kiểm tra slug đích | Tìm rule có URL cũ hoặc slug đích | curl -I, danh sách redirect | Slug đích trả 404 hoặc 200 đúng bài |
| 3. Chuyển hướng một bước | Tạo 301, sửa rule cũ trỏ thẳng đích | Rank Math hoặc plugin | Đúng 1 phản hồi 301 |
| 4. Sửa liên kết nội bộ | Đổi link trong bài, menu, footer, CTA | Screaming Frog | 0 link nội bộ tới URL 3xx |
| 5. Sitemap và canonical | Bỏ URL cũ, canonical về URL đích | Rank Math sitemap | 0 URL 3xx trong sitemap |
| 6. Kiểm tra chuỗi, vòng lặp | Thử http, www, dấu “/” cuối | curl, DevTools, Search Console | Tối đa 1 bước rồi 200 |
| 7. Theo dõi | So số liệu sau 4 và 8 tuần, giữ rule | Search Console | URL cũ ở lý do Trang có lệnh chuyển hướng |
7. Chuyển tên miền hoặc sang HTTPS: giữ redirect 301 bao lâu?
Khi chuyển cả website, mỗi URL cũ cần một rule 301 tới đúng URL mới, và rule phải được giữ đủ lâu.
Theo tài liệu Site moves của Google, giữ redirect càng lâu càng tốt, thường ít nhất 1 năm.
- Bảng ánh xạ: 100% URL cũ có traffic hoặc backlink có dòng chuyển 1 đổi 1.
- Công cụ Thay đổi địa chỉ: chỉ dùng khi đổi tên miền hoặc tên miền con.
- Tên miền cũ: gia hạn ít nhất 12 tháng sau ngày chuyển để rule không mất.
Chuyển HTTP sang HTTPS hay đổi www không cần công cụ Thay đổi địa chỉ.
Khi chuyển cả website, tài liệu Site moves viết rõ là nên giữ redirect càng lâu càng tốt, thường ít nhất 1 năm, vì đó là khoảng thời gian để Google và người dùng chuyển hẳn sang địa chỉ mới. Mục này chỉ nói về chuyển hướng. Các việc khác như thiết lập property Search Console mới hay kiểm tra robots.txt thuộc phạm vi audit website sau khi chuyển, nơi có checklist 30 hạng mục xếp theo mức ưu tiên.

7.1. Lập bảng ánh xạ URL cũ sang URL đích
Bảng ánh xạ là danh sách ghép mỗi URL cũ với đúng một URL đích. Tài liệu Site moves gợi ý lấy danh sách URL cũ từ sitemap, nhật ký máy chủ, công cụ phân tích như Analytics và báo cáo Liên kết của Search Console, để không sót trang nào đang có người vào hay có backlink.

Bảng nên có 4 cột là URL cũ, URL đích, mã trạng thái và ghi chú. Tiêu chí đo được: 100% URL cũ có traffic hoặc backlink có dòng ánh xạ 1 đổi 1, không dòng nào để trống URL đích hay dồn về trang chủ. Website có hàng nghìn URL cần chuyển mà chưa có người làm kỹ thuật có thể cân nhắc một giải pháp SEO tổng thể để lập và kiểm tra bảng này.
7.2. Dùng công cụ Thay đổi địa chỉ trong Search Console
Công cụ Thay đổi địa chỉ nằm trong phần Cài đặt của Google Search Console, chỉ dùng khi đổi tên miền hoặc tên miền con và gửi từ property của website cũ. Theo trợ giúp Search Console, bạn không cần công cụ này khi chuyển HTTP sang HTTPS hay đổi giữa www và không www trên cùng tên miền.

Tiêu chí đo được: redirect 301 phải chạy trước khi gửi, và bạn phải là chủ sở hữu đã xác minh của cả hai property. Trong giai đoạn theo dõi, gửi cả sitemap cũ và sitemap mới như tài liệu Site moves hướng dẫn. Thông báo chuyển địa chỉ hiển thị trong 180 ngày.
7.3. Giữ redirect tối thiểu 1 năm và giữ quyền sở hữu tên miền cũ
Rule chuyển hướng chỉ chạy khi tên miền cũ còn hoạt động. Nếu bạn để tên miền cũ hết hạn, toàn bộ rule mất theo, và mọi backlink trỏ về địa chỉ cũ trở thành link chết, thậm chí rơi vào tay người khác mua lại.

Tiêu chí đo được: rule chuyển hướng còn chạy ít nhất 12 tháng sau ngày chuyển theo tài liệu Site moves, và tên miền cũ được gia hạn trước ngày hết hạn. Khuyến nghị của SEODO là giữ lâu hơn nếu URL cũ còn backlink, vì chi phí gia hạn một tên miền thấp hơn nhiều so với lượng liên kết bạn mất đi.
8. 6 lỗi redirect 301 thường gặp và cách sửa
Nhận ra dấu hiệu sớm giúp bạn sửa lỗi chuyển hướng trước khi nó kịp làm người dùng và Googlebot đi lạc.
Có 6 lỗi redirect 301 hay gặp nhất khi audit website:
- Chuỗi và vòng lặp: nhiều bước nối nhau hoặc chuyển qua lại không có điểm dừng.
- Sai loại: dùng 302 cho thay đổi vĩnh viễn, hoặc meta refresh có độ trễ.
- Sai đích: chuyển về trang không liên quan hoặc trang chủ.
- Bỏ sót: liên kết nội bộ và sitemap vẫn trỏ về URL đã chuyển.
Googlebot theo tối đa 10 bước, nhưng đích nên đặt là 1 bước.
Lỗi chuyển hướng thường đến từ nhiều rule được tạo ở nhiều thời điểm và nhiều nơi khác nhau, nên khi sửa bạn luôn tìm trong cả plugin, cấu hình máy chủ và CDN. Trong báo cáo Lập chỉ mục trang, các lỗi này hiện ở lý do “Lỗi chuyển hướng”, gồm chuỗi chuyển hướng quá dài, vòng lặp chuyển hướng, URL vượt độ dài tối đa và URL trống hoặc không hợp lệ trong chuỗi, theo trợ giúp Báo cáo Lập chỉ mục trang.

8.1. Chuỗi chuyển hướng nhiều bước
Chuỗi chuyển hướng là khi URL A chuyển sang B, B lại chuyển sang C rồi mới tới trang có nội dung. Lỗi này thường xuất hiện sau vài lần đổi URL hoặc khi chuyển HTTPS và www được làm ở hai rule riêng. Mỗi bước thêm một yêu cầu HTTP, nên trang chậm hơn với cả người dùng lẫn Googlebot.

Tiêu chí đo được: Googlebot theo tối đa 10 bước, quá mức này Search Console báo “Lỗi chuyển hướng”. Tài liệu Site moves khuyên giữ chuỗi thấp, lý tưởng không quá 3 và dưới 5. Đích SEODO đặt cho redirect tự tạo là 1 bước. Cách sửa là cho mọi URL trong chuỗi trỏ thẳng về đích cuối.
8.2. Vòng lặp chuyển hướng
Vòng lặp xảy ra khi A chuyển sang B rồi B lại chuyển về A, nên trình duyệt đi mãi không tới đâu. Chrome sẽ báo ERR_TOO_MANY_REDIRECTS, còn Search Console ghi “Lỗi chuyển hướng”. Nguyên nhân hay gặp là rule cũ chuyển ngược về URL vừa đổi, hoặc rule https trên máy chủ chồng với rule của CDN.

Tìm mọi rule có chứa URL đó trong plugin, file .htaccess hoặc cấu hình Nginx và cài đặt CDN, rồi xoá rule chuyển ngược. Tiêu chí đạt: URL trả 1 phản hồi 301 rồi 200, không còn phản hồi 3xx nào quay về URL ban đầu.
8.3. Dùng 302 cho thay đổi vĩnh viễn
Một số plugin hay cấu hình hosting mặc định tạo 302, và người làm không để ý đổi lại. Kết quả là Google không dùng chuyển hướng làm tín hiệu chính tắc, nên URL cũ có thể vẫn nằm trong chỉ mục dù bạn đã đổi hẳn.

Tiêu chí đo được: SEODO thường đặt mức 30 ngày. Rule 302 nào đã chạy quá thời gian dự kiến thì xem lại, nếu thay đổi là vĩnh viễn thì đổi sang 301.
8.4. Chuyển hướng về trang không liên quan hoặc trang chủ
Chuyển một URL về trang không cùng chủ đề làm người dùng thất vọng và Google có thể coi đó là lỗi 404 mềm. Lỗi này hay gặp khi dọn dẹp website, người làm chọn cách nhanh nhất là dồn mọi URL đã xoá về trang chủ.

| URL cũ | Đích sai | Đích đúng |
| /sofa-da-bo-3-cho/ | Trang chủ | /sofa-da/ (danh mục cùng loại) |
| /cach-chon-sofa-da/ | /ghe-van-phong/ | /chon-sofa-da/ (bài mới cùng chủ đề) |
| /khuyen-mai-tet-2025/ | Trang chủ | Trả 410 nếu không có trang thay thế |
Tiêu chí đo được: URL đích cùng chủ đề với URL cũ, quay lại bảng quyết định ở mục 4. Nhiều URL cũ cùng chuyển về trang chủ là dấu hiệu cần xem lại từng dòng.
8.5. Liên kết nội bộ và sitemap vẫn trỏ về URL đã chuyển hướng
Lỗi này dễ bị bỏ sót vì nó không làm trang hỏng, người dùng vẫn tới đúng chỗ. Nhưng mỗi link cũ là một lần Googlebot phải đi qua chuyển hướng, và URL 3xx trong sitemap là tín hiệu mâu thuẫn, vì sitemap chỉ nên chứa URL bạn muốn hiện trên Google.

Tiêu chí đo được: 0 liên kết nội bộ và 0 URL trong sitemap có mã 3xx khi crawl lại. Dùng chế độ List của Screaming Frog, dán đường dẫn sitemap vào để kiểm tra mã trạng thái của từng URL.
8.6. Chuyển hướng JavaScript hoặc meta refresh có độ trễ
Trang thông báo kiểu “bạn sẽ được chuyển sau 5 giây” dùng meta refresh có độ trễ, và Google coi đó là chuyển hướng tạm thời. Nếu thay đổi là vĩnh viễn, bạn đang gửi sai tín hiệu dù người dùng vẫn tới đúng trang.

Tiêu chí đo được: redirect vĩnh viễn trả mã 301 hoặc 308 từ máy chủ, không dùng meta refresh có số giây lớn hơn 0.
Tóm tắt 6 lỗi
| Lỗi | Dấu hiệu | Cách sửa |
| Chuỗi chuyển hướng | Từ 2 phản hồi 3xx trở lên trước khi tới 200 | Trỏ mọi URL trong chuỗi thẳng về đích cuối |
| Vòng lặp | ERR_TOO_MANY_REDIRECTS, “Lỗi chuyển hướng” | Xoá rule chuyển ngược trong plugin, máy chủ, CDN |
| 302 cho thay đổi vĩnh viễn | Rule 302 chạy quá 30 ngày | Đổi sang 301 |
| Đích không liên quan | Nhiều URL cũ cùng về trang chủ | Chuyển về trang cùng chủ đề hoặc trả 410 |
| Link nội bộ, sitemap cũ | Crawl thấy link tới URL 3xx | Sửa link, bỏ URL 3xx khỏi sitemap |
| Meta refresh có độ trễ | Trang đếm ngược rồi chuyển | Thay bằng 301 từ máy chủ |
9. Cách kiểm tra redirect 301 có hoạt động đúng không?
Mỗi công cụ trả lời một câu hỏi riêng. Chọn đúng công cụ thì vài phút là kiểm tra xong, khỏi phải đoán.
Kiểm tra redirect 301 ở 3 cấp độ:
- Một URL: DevTools hoặc lệnh curl, thấy 1 dòng 301 rồi 1 dòng 200.
- Cả website: Screaming Frog, báo cáo Redirect Chains không có dòng nào từ 2 bước.
- Cách Google thấy: Search Console, 0 URL ở lý do Lỗi chuyển hướng.
Công cụ kiểm tra trực tuyến hợp khi bạn cần kết quả nhanh mà không cài gì.
Kiểm tra một URL bằng DevTools hoặc curl, kiểm tra cả website bằng công cụ crawl, và kiểm tra cách Google thấy bằng Search Console. Ba cấp độ này bổ sung cho nhau, vì một rule có thể chạy đúng trên trình duyệt của bạn nhưng Googlebot lại chưa thu thập lại. Khi rà chuyển hướng như một phần của kiểm tra toàn website, quy trình SEO audit 7 bước giúp bạn đặt hạng mục này cạnh các lỗi kỹ thuật khác để sửa theo thứ tự ưu tiên.

| Công cụ | Kiểm tra được gì | Chi phí |
| Chrome DevTools, curl | Từng bước chuyển hướng và header của 1 URL | Miễn phí |
| Google Search Console | Google đã nhận chuyển hướng chưa, có lỗi chuyển hướng không | Miễn phí |
| Screaming Frog SEO Spider | Chuỗi, vòng lặp, link nội bộ tới URL 3xx trên cả website | Miễn phí đến 500 URL, trả phí để crawl nhiều hơn |
| Công cụ kiểm tra trực tuyến | Chuỗi chuyển hướng của 1 URL, không cần cài đặt | Miễn phí |
9.1. Kiểm tra một URL bằng DevTools hoặc lệnh curl
Mở Chrome DevTools, chọn tab Network, tích ô Preserve log để giữ lại các yêu cầu khi trang chuyển, rồi gõ URL cũ vào thanh địa chỉ. Bạn sẽ thấy từng bước chuyển hướng với mã trạng thái của nó. Nếu quen dùng Terminal, lệnh curl -sIL cho kết quả tương tự và liệt kê đủ từng bước.

$ curl -sIL http://noithatabc.example/cach-chon-sofa-da-cho-phong-khach-nho/ | grep -iE "^(HTTP|location)"
HTTP/1.1 301 Moved Permanently
Location: https://noithatabc.example/chon-sofa-da/
HTTP/2 200
Tiêu chí đo được: tab Network thấy 1 dòng 301 rồi 1 dòng 200. Nếu có thêm dòng 301 hoặc 302 ở giữa, đó là chuỗi cần sửa theo mục 8.1.
9.2. Kiểm tra trong Google Search Console
DevTools cho biết rule đang chạy, còn Search Console cho biết Google đã nhận ra chưa. Mở báo cáo Lập chỉ mục trang, xem hai lý do liên quan tới chuyển hướng: “Trang có lệnh chuyển hướng” chứa các URL cũ đã được nhận, và “Lỗi chuyển hướng” chứa các URL có chuỗi quá dài hoặc vòng lặp.

Tiêu chí đo được: URL cũ nằm ở lý do “Trang có lệnh chuyển hướng”, 0 URL ở lý do “Lỗi chuyển hướng”, và URL đích ở trạng thái đã lập chỉ mục. Nếu mới dùng công cụ này, bài Google Search Console hướng dẫn cài đặt và các tính năng chính từ đầu.
9.3. Kiểm tra cả website bằng Screaming Frog
Với website nhiều trang, kiểm tra từng URL là không khả thi. Screaming Frog crawl toàn bộ website, sau đó bạn vào tab Response Codes, lọc Redirection (3xx) để xem đích của từng URL. Muốn thấy chuỗi, vào menu Reports, Redirects, Redirect Chains và xuất báo cáo ra bảng tính.

Tiêu chí đo được: báo cáo Redirect Chains không có dòng nào từ 2 bước trở lên. Bản miễn phí của Screaming Frog crawl tối đa 500 URL mỗi lần, đủ cho phần lớn website nhỏ. Giới hạn này có thể thay đổi, nên xem lại trang chính thức trước khi dùng cho website lớn.
9.4. Công cụ kiểm tra redirect trực tuyến
Khi cần kiểm tra nhanh trên điện thoại hay máy không cài Screaming Frog, các công cụ trực tuyến như redirect-checker.org là lựa chọn tiện nhất. Bạn chỉ cần dán URL cũ, công cụ gọi lần lượt từng bước và hiện mã trạng thái của từng bước.

Tiêu chí đo được: kết quả hiện đủ từng bước và mã trạng thái, bước cuối là 200. Công cụ chạy từ máy chủ của họ, nên kết quả có thể khác nếu website chặn theo quốc gia. Nếu bước cuối trả 401 thay vì 200, trang đích đang đòi đăng nhập, cách xử lý có trong bài lỗi 401 Unauthorized.
10. 5 quan niệm sai về chuyển hướng 301 nên bỏ
Bỏ được những lời khuyên cũ giúp bạn không tốn tiền vào kỹ thuật có rủi ro và không kỳ vọng sai vào chuyển hướng.
Có 5 quan niệm sai về chuyển hướng 301 vẫn được dạy nhiều:
- Về sức mạnh: mua tên miền cũ để lấy sức mạnh, và mất 10 đến 15% qua mỗi lần chuyển.
- Về 302: cho rằng 302 không truyền được gì.
- Về thời gian: xoá redirect sau vài tháng.
- Về kết quả: tin rằng chuyển hướng giúp tăng gấp 3 traffic.
Cả 5 đều không có cơ sở trong tài liệu của Google.
Những quan niệm này lan truyền vì thường đi kèm một con số nghe rất cụ thể. Cách kiểm tra của tôi là hỏi con số đó lấy từ tài liệu nào của Google, không trả lời được thì đó chỉ là ước đoán.

10.1. “Mua tên miền cũ rồi 301 về website để lấy sức mạnh”
Spam policies mô tả expired domain abuse là mua tên miền hết hạn và dùng lại chủ yếu để thao túng thứ hạng. Chọn tên miền theo Trust Flow, một chỉ số của Majestic, hay theo số referring domain không làm việc này thành hợp lệ. Redirect hợp lệ theo Google là chuyển website của chính bạn và gộp trang.

Tiêu chí: tên miền cũ phải là website của chính bạn, và nội dung giữa hai bên tương ứng 1 đổi 1.
10.2. “Chuyển hướng làm mất 10 đến 15% sức mạnh liên kết”
Không có tài liệu nào của Google đưa ra tỷ lệ này. Như đã nói ở mục 2.2, tài liệu chỉ nói thứ hạng có thể dao động tạm thời trong quá trình chuyển, không đưa phần trăm nào cho từng lần chuyển hướng.

Tiêu chí: đo tác động bằng báo cáo Hiệu suất của URL đích trong 28 ngày trước và sau, không bằng con số ước đoán.
10.3. “302 không truyền được gì, chỉ 301 mới có tác dụng”
Tài liệu HTTP status codes ghi Googlebot vẫn đi theo 302, chỉ khác là Google không dùng nó làm tín hiệu chính tắc. Nói cách khác, 302 vẫn đưa người dùng và bot tới đích, nó chỉ khiến Google tiếp tục ưu tiên URL nguồn.

Tiêu chí: chọn theo bản chất thay đổi, vĩnh viễn là 301, tạm thời là 302.
10.4. “Có thể xoá redirect sau vài tháng”
Tài liệu Site moves viết giữ redirect càng lâu càng tốt, thường ít nhất 1 năm. Xoá sớm thì mọi backlink và bookmark trỏ về URL cũ sẽ gặp 404.

Tiêu chí: không xoá rule khi URL cũ còn backlink hoặc cột Hits vẫn còn lượt truy cập.
10.5. “Chuyển hướng vĩnh viễn giúp tăng gấp 3 traffic”
Redirect chỉ đưa người dùng và Googlebot tới đúng URL, không tự tạo thêm traffic. Không có tài liệu nào của Google xác nhận chuyển hướng làm tăng thứ hạng. Những lời hứa “gấp 3” thường không kèm số liệu trước và sau.

Tiêu chí: mục tiêu đo là giữ được lượt nhấp của URL cũ chuyển sang URL đích.
11. Câu hỏi thường gặp về redirect 301
Những câu trả lời ngắn cho các thắc mắc khách hàng hỏi SEODO nhiều nhất về chuyển hướng.
- Thứ hạng: có thể dao động tạm thời, không có lời hứa giữ nguyên.
- Thời gian giữ: ít nhất 1 năm khi chuyển website, bài viết đổi đường dẫn thì giữ vĩnh viễn.
- Bài cũ: sửa slug không tạo bài cũ để xoá.
- Trang 404: không chuyển hết về trang chủ.
- Tốc độ: 1 bước thường không đáng kể, chuỗi nhiều bước thì có.

11.1. Redirect 301 có làm mất thứ hạng không?
Thứ hạng có thể dao động tạm thời trong quá trình Google xử lý chuyển hướng, như tài liệu Site moves đã nêu. Khi trang đích có nội dung tương đương và chuyển hướng chỉ có một bước, rủi ro giảm rõ rệt. Dù vậy, không ai hứa chắc được thứ hạng giữ nguyên sau khi đổi URL.
11.2. Nên giữ redirect 301 trong bao lâu?
Càng lâu càng tốt, thường ít nhất 1 năm khi chuyển cả website theo tài liệu Site moves. Với một bài viết đổi đường dẫn, SEODO giữ rule vĩnh viễn, vì một rule không tốn chi phí gì mà vẫn đưa người bấm link cũ tới đúng bài.
11.3. Sau khi chuyển hướng có cần xoá bài cũ không?
Sửa slug trong WordPress là sửa chính bài đó, nên không có bài cũ nào để xoá. Khi gộp 2 bài trùng chủ đề, bài bị gộp chuyển sang nháp hoặc xoá, nhưng rule 301 từ URL của nó về bài giữ lại vẫn phải giữ.
11.4. Có nên chuyển hướng mọi trang 404 về trang chủ không?
Không. Trang có bản thay thế tương đương thì 301 về trang đó, không có thì để trả 404 hoặc 410. Dồn mọi URL lỗi về trang chủ dễ bị báo lỗi 404 mềm. Bài lỗi 404 Not Found có thêm cách tạo trang 404 thân thiện để giữ chân người dùng.
11.5. Redirect 301 có làm website chậm hơn không?
Mỗi bước chuyển hướng là thêm 1 yêu cầu HTTP trước khi trang bắt đầu tải. Một bước thường không đáng kể, còn chuỗi nhiều bước thì có, nhất là trên mạng di động. Bạn đo được bằng tab Network của DevTools, và bài tối ưu tốc độ website có thêm các cách giảm thời gian tải trang.
Nguồn tham khảo
- Google Search Central: Redirects and Google Search (cập nhật 14/04/2026)
- Google Crawling Infrastructure: HTTP status codes and network errors (cập nhật 04/02/2026)
- Google Search Central: How to specify a canonical URL with rel=”canonical” and other methods (cập nhật 10/07/2026)
- Google Search Central: Site moves with URL changes (cập nhật 20/08/2026)
- Google Search Central: Spam policies for Google web search, mục Expired domain abuse và Sneaky redirects (cập nhật 28/08/2026)
- Google Search Central: Build and submit a sitemap
- Trợ giúp Search Console: Báo cáo Lập chỉ mục trang, Công cụ Thay đổi địa chỉ
- MDN Web Docs: 301 Moved Permanently, 307 Temporary Redirect, 308 Permanent Redirect
- Rank Math Knowledge Base: Setting up Redirections, General Settings
- WordPress.org: plugin 301 Redirects (WebFactory, bản 2.85) và Redirection (John Godley)
- Screaming Frog: SEO Spider, trang tính năng và hướng dẫn sử dụng

WulingTăng trưởng bền vững từ chiến lược SEO
SCGNghiệm thu dự án sớm 2 tháng
cirCOVượt KPI trước 3 tháng