Redirection

Bạn có biết Redirection là gì không? Redirection có tác dụng thế nào trong SEO? Hãy cùng tìm hiểu khái niệm về Redirection tại VietMoz.net, bài viết được VietMoz biên dịch tài liệu từ SEOmoz.

Redirection

Redirection tạm dịch là sự chuyển hướng, sự chuyển hướng là quá trình chuyển tiếp từ URL này đến một URL khác. Có ba loại chính là 301, 302 và meta refresh

Phân loại chuyển hướng

  • 301 (chuyển vĩnh viễn) – Nên dùng cho seo
  • 302 (chuyển tạm thời)
  • Meta refresh

Redirection là gì?

Chuyển hướng là một cách chuyển cả người dùng và các công cụ tìm kiếm đến một URL khác so với một trong những yêu cầu ban đầu. Dưới đây là mô tả của một số loại thường được sử dụng của chuyển hướng.

  1. 301 Moved Permanently

Chuyển hướng 301 là một chuyển hướng vĩnh viễn 90-99% link juice (ranking power) đến trang chuyển hướng. 301 là mã trạng thái HTTP cho loại này của chuyển hướng. Trong hầu hết các trường hợp, chuyển hướng 301 là phương pháp tốt nhất để thực hiện chuyển hướng trên một trang web.

  1. 302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)

Chuyển hướng 302 là tạm thời chuyển hướng 0% link juice (ranking power) và trong nhiều trường hợp không nên được sử dụng. Internet chạy trên một giao thức gọi là HyperText Transfer Protocol (HTTP) cho thấy URL hoạt động như thế nào. Nó có hai phiên bản chính là 1.0 và 1.1. Với phiên bản 302 đầu tiên đề cập đến các mã trạng thái 'Đã tạm thời dời'. Điều này đã được thay đổi trong phiên bản 1.1 có nghĩa là 'tìm thấy'.

  1. 307 Moved Temporarily (HTTP 1.1 Only)

Chuyển hướng 307 mã HTTP 1.1 kế tiếp của chuyển hướng 302. Trong khi các trình thu thập chủ yếu xử lý nó như một chuyển hướng 302 trong một số trường hợp, nhưng tốt nhất nên sử dụng chuyển hướng 301 cho hầu hết các trường hợp. Ngoại trừ khi nội dung thực sự cần di chuyển tạm thời (ví dụ như trong thời gian bảo trì), máy chủ đã được xác định bởi các công cụ tìm kiếm như là tương thích mã 1.1. Trong trường hợp này tốt nhất nên sử dụng chuyển hướng 302.

  1. Meta Refresh

Meta Refresh là một loại chuyển hướng được thực thi trên cấp độ trang chứ không phải là cấp độ máy chủ (thường sẽ chậm hơn và không phải là một kỹ thuật SEO khuyên dùng). Chúng thường được kết hợp với đoạn text 5 giây đếm ngược "Nếu bạn không được chuyển trong 5 giây, hãy bấm vào đây". Meta refresh vượt qua một số link juice, nhưng không được khuyến cáo như là một chiến thuật SEO.

Áp dụng tốt nhất trong SEO

Nên sử dụng để thực hành chuyển hướng một URL đến URL khác. Khi thực hiện, đó sẽ là phương pháp tốt nhất để duy trì giá trị trong SEO.

Ví dụ sự phổ biến đầu tiên diễn ra với một tình huống đơn giản, một URL cần phải chuyển hướng đến một địa chỉ khác vĩnh viễn.

redirect illustration

Có nhiều tùy chọn để làm điều này, nói chung chuyển hướng 301 sẽ phù hợp hơn cho cả người dùng và các công cụ tìm kiếm. Chuyển hướng 301 cho cả hai trình duyệt và công cụ tìm kiếm các trang đã di chuyển vĩnh viễn. Công cụ tìm kiếm giải thích điều này có nghĩa là không chỉ có các trang thay đổi vị trí, nhưng nội dung, hoặc một phiên bản cập nhật của nó, có thể được tìm thấy tại URL mới. Các công cụ sẽ thực hiện bất kỳ liên kết từ trang gốc đến URL mới, như sau:

redirect google following

Hãy biết rằng khi di chuyển một trang từ một URL khác, các công cụ tìm kiếm sẽ mất một thời gian để phát hiện 301. Trước khi nhận ra sự thay đổi đó và chấp nhận trang mới với bảng xếp hạngsự tin tưởng của trang trước đó. Quá trình này có thể lâu hơn nếu các trang web có ít lượt truy cập hoặc không đúng cách. Vì thế hãy khai báo cho Google mỗi khi bạn thay đổi lại nội dung trên website của mình nhé.

Tùy chọn khác để chuyển hướng, đó là 302s và meta refresh, chúng thường sẽ không vượt qua các bảng xếp hạng và giá trị công cụ tìm kiếm như một trang chuyển hướng 301.

Di chuyển nội dung trở nên phức tạp hơn khi thay đổi toàn bộ trang web, tên miền hoặc khi di chuyển nội dung từ một tên miền khác. Do lạm dụng bởi những spammer và nghi ngờ bởi các công cụ tìm kiếm, 301s giữa các lĩnh vực đôi khi cần nhiều thời gian hơn để được index. Để di chuyển giữa các trang web, xem bài của Danny Dover Hướng dẫn SEO: Làm thế nào để Di chuyển Tên miền (Ban biên tập VietMoz sẽ cố gắng biên dịch bài viết này sang tiếng Việt để gửi tới bạn đọc)

301 Redirects in Apache

Chuyển hướng 301 trong Apache

  • Vấn đề:

Khi seomoz.org được thiết lập lúc đầu, nó được lưu trữ tại www.socengine.com/seo/ chứ không phải lưu trữ trên tên miền riêng của nó. Khi các nhà sáng lập ra seomoz.org muốn phát triển hơn học đã quyết định chuyển toàn bộ dữ liệu về tiên miền của mình, họ muốn nó được truy cập như tên miền riêng của mình chứ không phải như là một thư mục con của socengine.com. Họ cần người dùng truy cập bất cứ điều gì trong www.socengine.com/seo/ được chuyển hướng tới www.seomoz.org. Việc chuyển hướng có chứa tập tin khác nhau và thay đổi tên thư mục và đã được thực hiện với chuyển hướng 301 để có công cụ tìm kiếm thân thiện. Họ cũng thấy việc cần thiết khi chuyển tiếp http://www.seomoz.org sang http://seomoz.org  với 2 mục đích chính là đẹp hơn và tránh các lỗi Canonicalization

  • Giải pháp:

Phương pháp đơn giản để làm điều này có thể đã được thêm chuyển hướng 301 đến các mã PHP mà quyền hạn SEOmoz.org bằng cách sử dụng chức năng tiêu đề của PHP. Bằng cách sử dụng sức mạnh của module apache mod_rewrite, tuy nhiên, các nhà phát triển nhận ra họ có thể phù hợp với mô hình cụ thể cho toàn bộ thư mục và chuyển hướng họ đến các URL mới của họ mà không cần phải đi qua tất cả các cấu trúc PHP.

  • Cài đặt:

Để cho tiện làm việc một máy chủ web cần phải có module mod_rewrite apache được  cài đặt. Hầu hết các apache cài đặt sẽ có mod_rewrite cài đặt mặc định. Máy chủ gốc của Seomoz rand bản phân phối Linux FreeBSD và mod_rewrite đã được bao gồm theo mặc định. Để kiểm tra xem nếu module đã được cài đặt, một nhà phát triển có thể xác minh đó là làm việc bằng cách thêm dòng sau vào file cấu hình apache hoặc để áp dụng một tập tin htaccess.:

RewriteEngine On

  • Bối cảnh

Các module mod_rewrite hoạt động trong bối cảnh mỗi máy chủ hoặc trong bối cảnh mỗi thư mục.

Bối cảnh mỗi máy chủ yêu cầu một nhà phát triển phải chỉnh sửa các tập tin cấu hình apache, httpd.conf. Bối cảnh cho mỗi thư mục sử dụng tập tin htaccess mà tồn tại trong mỗi thư mục người dùng muốn cấu hình. Nếu một quản trị web không thể truy cập httpd.conf, họ sẽ phải sử dụng tập tin htaccess.

  • Biểu thức chính quy (aka Regexes)

Từ wikipedia.org:

Một biểu hiện thường xuyên là một chuỗi mô tả hoặc phù hợp với một bộ dây, theo một số quy tắc cú pháp nhất định. Biểu thức thông thường được sử dụng bởi nhiều trình soạn thảo văn bản và các tiện ích để tìm kiếm và thao tác các bộ phận của văn bản dựa trên các mẫu nhất định.

Biểu thức thông thường là một kỹ năng có giá trị để tìm hiểu cho cả người lập trình và hệ thống quản trị. Để các URL chuyển hướng theo các ví dụ trong tài liệu này, nó quan trọng để hiểu những điều cơ bản của việc sử dụng regexes. Sau đây là một danh sách các ký hiệu được sử dụng trong các regexes mô tả trong tài liệu này:

  • . Period – kết nối bất cứ điều gì.
  • * Asterisk – kết nối không hoặc nhiều hơn của nhân vật trước
  • + Plus dấu hiệu – kết nối một hoặc nhiều nhân vật trước
  • () Ngoặc – kèm theo một giá trị trong ngoặc sẽ lưu trữ những gì đã xuất hiện trong một biến được sử dụng sau này. Điều này cũng được gọi là một tham chiếu trở lại.
  • (value1 | value2) – Kèm hai hoặc nhiều hơn các giá trị trong ngoặc đơn và tách chúng bằng dấu gạch đứng là tương đương rằng: "kết hợp value1 OR value2"

Chuyển hướng các tập tin và thư mục từ một tên miền khác:

Các nhà phát triển lúc đầu của SEOmoz cần chuyển hướng từ các máy chủ cũ sang mới với các tên tập tin được bảo quản.

  • Ví dụ

Redirect

Sang

http://www.socengine.com/seo/somefile.php

http://www.seomoz.org/somefile.php
 
  • Giải pháp

Thêm chỉ thị cho các tập tin về máy chủ của socengine.com:

RedirectMatch 301 / seo / (*). Http://www.seomoz.org/ $ 1

  • Giải thích:

Các biểu hiện thường xuyên / seo / (*) cho apache để phù hợp với thư mục seo tiếp theo không hoặc nhiều hơn của bất kỳ c-haracter. Xung quanh *. Trong ngoặc cho apache để lưu chuỗi xuất hiện trở lại như là một tài liệu tham khảo. Tham chiếu trở lại này được đặt ở phần cuối của URL đã được hướng đến, trong trường hợp này, $ 1.

Đổi hướng Tên máy chủ lưu trữ Canonical:

Các nhà phát triển lúc đầu của SEOmoz cần chuyển hướng bất kỳ yêu cầu không bắt đầu với www.seomoz.org để đảm bảo họ bao gồm các www. Họ đã làm điều này không chỉ vì nó có vẻ tốt hơn, nhưng để tránh các lỗi canonicalization phổ biến.

Redirect sang
http://seomoz.org/ http://www.seomoz.org/
http://mail.seomoz.org/ http://www.seomoz.org
http://seomoz.org/somefile.php http://www.seomoz.org/somefile.php
  • Giải pháp:

Thêm chỉ thị:
RewriteCond% {HTTP_HOST} ^ www. SEOmoz org [NC]
RewriteRule (*) http://www.seomoz.org/ $ 1 [L, R = 301]

  • Giải thích:

Chỉ thị này cho apache để kiểm tra các máy chủ mà khách truy cập, và nó không bằng www.seomoz.org chuyển hướng đến www.seomoz.org. Dấu chấm than (!) Ở phía trước của www.seomoz.org phủ định so sánh, nói rằng "nếu chủ nhà KHÔNG www.seomoz.org, sau đó thực hiện RewriteRule." Trong trường hợp của chúng tôi RewriteRule chuyển hướng để www.seomoz.org trong khi bảo quản các tập tin chính xác họ đã truy cập trong một tham chiếu trở lại.

Chuyển hướng không bảo quản tên tập tin:

Một số tập tin đã tồn tại trên máy chủ cũ không có hiện diện lâu dài trên máy chủ mới. Thay vì bảo quản tên tập tin chuyển hướng (mà sẽ cho kết quả trong một 404 không tìm thấy lỗi trên máy chủ mới), các tập tin cũ cần được chuyển hướng tới URL gốc của tên miền mới.

Redirect Sang
 http://www.socengine.com/seo/someoldfile.php http://www.seomoz.org/
  • Giải pháp:

Thêm chỉ thị:
RedirectMatch 301 / seo / someoldfile.php http://www.seomoz.org

  • Giải thích:

Bỏ qua bất kỳ dấu ngoặc đơn, tất cả các yêu cầu / seo / someoldfile.php nên chuyển hướng đến URL gốc của http://www.seomoz.org

Chuyển hướng các chuỗi GET:

Một số các script PHP có tên gọi khác nhau, nhưng chuỗi GET vẫn giống nhau. Các nhà phát triển SEOmoz cần chuyển hướng khách truy cập vào các kịch bản PHP mới trong khi bảo quản các chuỗi GET. Các chuỗi GET là tập hợp các ký tự sau khi một tên tập tin trong URL và được sử dụng để truyền dữ liệu đến một trang web. Một ví dụ của một chuỗi GET trong
http://www.seomoz.org/myfile.php?this=that&foo=bar URL sẽ là "này mà & foo = bar?"

Redirect: Sang
 http://www.socengine.com/seo/categorydetail.php?CAT_ID=12345 http://www.seomoz.org/artcat.php?CAT_ID=12345
  • Giải pháp:

Thêm chỉ thị:
RedirectMatch 301 / seo / categorydetail.php (*). Http://www.seomoz.org/artcat.php $ 1

  • Giải thích:

Một lần nữa biểu hiện thường xuyên (*) cho apache để phù hợp với không hoặc nhiều hơn của nhân vật nào và lưu nó như là tham chiếu back-1. Kể từ khi có $ 1 sau khi / seo / categorydetail.php, nó sẽ chuyển hướng nhận được chuỗi này file PHP mới.

Chuyển hướng trong khi thay đổi phần mở rộng tập tin:

Trong phần ban đầu, là một thư mục của các tập tin trên máy chủ cũ gồm hỗn hợp HTML và PHP. Trên máy chủ mới, những tập tin này là tất cả PHP và cần chuyển hướng logic để thay đổi URL cũ để mở rộng mới này.

Redirect Sang
http://www.socengine.com/seo/guide/anyfile.html http://www.seomoz.org/articles/anyfile.php
 http://www.socengine.com/seo/guide/anyfile2.php http://www.seomoz.org/articles/anyfile2.php
  • Giải pháp:

Thêm chỉ thị:
RedirectMatch 301 / seo / hướng dẫn / (*) . (Php | html) http://www.seomoz.org/articles/ $ 1.php

  • Giải thích:

(*) Phù hợp với không hoặc nhiều hơn của c-hareacter nào và lưu nó như là tham chiếu back-1. (php | html) cho apache để phù hợp với một khoảng thời gian tiếp theo hoặc là "php" hoặc "html" và lưu nó như là các tài liệu tham khảo-back $ 2 (mặc dù điều này không được sử dụng trong ví dụ này). Chú ý với một dấu gạch chéo ngược. Điều này là để đảm bảo apache không giải thích khoảng thời gian có nghĩa là "bất kỳ c-hareacter" mà đúng hơn là một khoảng thời gian thực tế. Kèm theo "php" và "html" trong dấu ngoặc và tách biệt chúng bằng một đường "|" c-haracter có nghĩa là để phù hợp với hoặc là một trong các giá trị. Vì vậy, nếu nó là để nói (php | html | css | js | jpg | gif) regex sẽ phù hợp với bất kỳ của các tập tin với phần mở rộng php, html, css, js, jpg, hoặc gif.

Kết luận:

Sức mạnh của mod_rewrite khai thác và một ma thuật ít biểu hiện thường xuyên, các nhà phát triển ban đầu tại SEOmoz phát triển một tập hợp các quy tắc đơn giản để chuyển hướng trang web. Bằng cách sử dụng 301 chuyển hướng, họ đã làm điều này cho các công cụ tìm kiếm thân thiện.

Công cụ liên quan

mozBar
mozBar giúp xem các số liệu có liên quan SEO khi bạn lướt web được dễ dàng hơn.
Open Site Explorer
Open Site Explorer là một công cụ miễn phí cung cấp cho quản trị web khả năng nhìn thấy lên đến 10000 liên kết tới bất kỳ trang web hoặc trang web thông qua chỉ số web Linkscape.

Tài liệu tham khảo thêm

Làm thế nào để tạo ra 301 chuyển hướng trong các ngôn ngữ lập trình khác nhau
Một ví dụ đầy bài viết về việc làm thế nào để thực hiện chuyển hướng 301
HTTP Status Codes
W3 của tài liệu chính thức cho các mã trạng thái HTTP
301 Chuyển hướng từ Google
Tài liệu chính thức của Google trong tổng số 301 chuyển hướng.

Hướng dẫn liên quan

Đào tạo SEO, Khóa học SEO tại Hà Nội – Dao tao SEO VietMoz
Đăng ký một khoá học SEO tại VietMoz để được hướng dẫn đầy đủ và chi tiết về cách làm SEO

Ghi chú:
Bài viết được chuyên gia SEO Phạm Minh của VietMoz.net dành rất nhiều công sức và thời gian biên dịch từ tài liệu của SEOmoz, đề nghị các bạn không sao chép và phát tán dưới mọi hình thức.

Các bài viết khác về Kiến thức cơ bản

1 Comment

  1. Đức Sơn

    Mình chuyển hướng khá nhiều bài viết về 1 page redirect đã code sẵn sau đó, page này dẫn đến website khác. Như vậy không biết có ảnh hưởng gì đến website chính không? (website sử dụng trang redirect)

Gửi phản hồi