Lệnh chuyển hướng và Google Tìm kiếm
Chuyển hướng URL là phân giải URL hiện tại thành một URL khác, qua đó thông báo cho khách truy cập và Google Tìm kiếm biết rằng trang đã có địa chỉ mới. Lệnh chuyển hướng đặc biệt hữu ích trong những trường hợp sau:
- Bạn đã di chuyển trang web của mình sang một miền mới và bạn muốn quá trình chuyển đổi diễn ra suôn sẻ nhất có thể.
- Mọi người truy cập trang web của bạn qua nhiều URL. Ví dụ: nếu mọi người có thể truy cập trang chủ của bạn qua nhiều cách (chẳng hạn như
https://example.com/home
,http://home.example.com
, vàhttps://www.example.com
), thì bạn nên chọn một trong những URL đó làm đích đến ưu tiên (chính tắc) rồi dùng lệnh chuyển hướng để chuyển lưu lượng từ các URL khác sang URL ưu tiên. - Bạn định hợp nhất hai trang web và muốn đảm bảo rằng đường liên kết tới các URL lỗi thời được chuyển hướng tới đúng trang.
- Bạn đã xoá một trang và muốn đưa người dùng đến một trang mới.
Tổng quan về các loại lệnh chuyển hướng
Thường thì người dùng không phân biệt được các loại lệnh chuyển hướng, nhưng đối với Google Tìm kiếm, lệnh chuyển hướng giống như một tín hiệu và độ mạnh yếu của tín hiệu đó cho biết có nên chọn trang đích chuyển hướng làm phiên bản chính tắc hay không. Cách chọn lệnh chuyển hướng tuỳ thuộc vào việc bạn dự kiến lệnh chuyển hướng sẽ có hiệu lực trong bao lâu và bạn muốn Google Tìm kiếm hiện trang nào trong kết quả tìm kiếm:
- Chuyển hướng vĩnh viễn: Trang đích mới sau khi chuyển hướng sẽ xuất hiện trong kết quả tìm kiếm.
- Chuyển hướng tạm thời: Trang nguồn trước khi chuyển hướng sẽ xuất hiện trong kết quả tìm kiếm.
Bảng sau đây giải thích các phương pháp thiết lập lệnh chuyển hướng vĩnh viễn và tạm thời, được sắp xếp theo xác suất Google có thể hiểu đúng lệnh chuyển hướng đó (ví dụ: lệnh chuyển hướng phía máy chủ sẽ có xác suất được Google hiểu đúng cao nhất). Chọn loại lệnh chuyển hướng phù hợp với tình huống và trang web của bạn:
Loại lệnh chuyển hướng | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Vĩnh viễn |
Googlebot sẽ đi theo lệnh chuyển hướng và quy trình lập chỉ mục sẽ coi lệnh chuyển hướng là một tín hiệu mạnh cho thấy trang đích chuyển hướng này nên được chọn làm trang chính tắc.
|
||||||||||
Tạm thời |
Googlebot sẽ đi theo lệnh chuyển hướng và quy trình lập chỉ mục sẽ coi lệnh chuyển hướng là một tín hiệu yếu cho thấy không nên chọn trang đích chuyển hướng này làm trang chính tắc.
|
Lệnh chuyển hướng phía máy chủ
Để thiết lập lệnh chuyển hướng phía máy chủ, bạn phải có quyền truy cập vào tệp cấu hình máy chủ (ví dụ: tệp .htaccess
trên Apache) hoặc bạn phải đặt tiêu đề chuyển hướng bằng tập lệnh phía máy chủ (ví dụ: PHP). Bạn có thể tạo cả lệnh chuyển hướng vĩnh viễn và lệnh chuyển hướng tạm thời phía máy chủ.
Lệnh chuyển hướng vĩnh viễn phía máy chủ
Nếu cần thay đổi URL của một trang khi trang đó xuất hiện trong kết quả của công cụ tìm kiếm, bạn nên dùng lệnh chuyển hướng vĩnh viễn phía máy chủ bất cứ khi có thể. Đây là cách tốt nhất để đảm bảo rằng Google Tìm kiếm và người dùng được chuyển hướng đến đúng trang. Các mã trạng thái 301
và 308
có nghĩa là một trang đã được di chuyển vĩnh viễn đến một địa chỉ mới.
Lệnh chuyển hướng tạm thời phía máy chủ
Nếu bạn chỉ muốn tạm thời chuyển người dùng đến một trang khác, hãy sử dụng lệnh chuyển hướng tạm thời. Điều này cũng sẽ đảm bảo rằng Google giữ lại URL cũ trong kết quả lâu hơn. Ví dụ: Nếu trang web của bạn đang tạm dừng cung cấp dịch vụ, thì bạn có thể thiết lập một lệnh chuyển hướng tạm thời để đưa người dùng đến một trang có nội dung giải thích sự việc mà không ảnh hưởng đến URL gốc trong kết quả tìm kiếm.
Triển khai lệnh chuyển hướng phía máy chủ
Việc triển khai lệnh chuyển hướng phía máy chủ phụ thuộc vào môi trường lưu trữ và máy chủ hoặc ngôn ngữ kịch bản trong phần phụ trợ của trang web.
Để thiết lập lệnh chuyển hướng vĩnh viễn bằng PHP, hãy dùng hàm header()
. Bạn phải đặt tiêu đề trước khi gửi nội dung bất kỳ lên màn hình:
header('HTTP/1.1 301 Moved Permanently'); header('Location: https://www.example.com/newurl'); exit();
Tương tự như vậy, sau đây là một ví dụ về cách thiết lập lệnh chuyển hướng tạm thời bằng PHP:
header('HTTP/1.1 302 Found'); header('Location: https://www.example.com/newurl'); exit();
Nếu có quyền truy cập vào tệp cấu hình của máy chủ web, bạn có thể tự viết các quy tắc chuyển hướng. Hãy làm theo hướng dẫn của máy chủ web bạn đang dùng:
-
Apache: Hãy tham khảo Hướng dẫn của Apache về
.htaccess
, Hướng dẫn của Apache về cách viết lại URL và tài liệu của Apache vềmod_alias
. Ví dụ: Bạn có thể dùngmod_alias
để thiết lập hình thức chuyển hướng đơn giản nhất:# Permanent redirect: Redirect permanent "/old" "https://example.com/new" # Temporary redirect: Redirect temp "/two-old" "https://example.com/two-new"
Đối với các lệnh chuyển hướng phức tạp hơn, hãy dùng
mod_rewrite
. Ví dụ:RewriteEngine on # redirect the service page to a new page with a permanent redirect RewriteRule "^/service$" "/about/service" [R=301] # redirect the service page to a new page with a temporary redirect RewriteRule "^/service$" "/about/service" [R]
-
NGINX: Hãy đọc về cách Tạo quy tắc viết lại NGINX trên blog của NGINX. Giống như với Apache, bạn có nhiều cách để tạo lệnh chuyển hướng. Ví dụ:
location = /service { # for a permanent redirect return 301 $scheme://example.com/about/service # for a temporary redirect return 302 $scheme://example.com/about/service }
Đối với các lệnh chuyển hướng phức tạp hơn, hãy dùng quy tắc
rewrite
:location = /service { # for a permanent redirect rewrite service?name=$1 ^service/offline/([a-z]+)/?$ permanent; # for a temporary redirect rewrite service?name=$1 ^service/offline/([a-z]+)/?$ redirect; }
- Đối với tất cả các máy chủ web khác, hãy hỏi người quản lý máy chủ/máy chủ lưu trữ hoặc tìm kiếm hướng dẫn bằng công cụ tìm kiếm mà bạn thích dùng (ví dụ: tìm kiếm theo từ khoá "LiteSpeed redirects" – "lệnh chuyển hướng LiteSpeed").
meta refresh
và lệnh chuyển hướng HTTP tương đương
Nếu không thể triển khai lệnh chuyển hướng phía máy chủ trên nền tảng của bạn, lệnh meta refresh
có thể là một phương án khả thi. Google phân biệt giữa hai loại lệnh chuyển hướng meta refresh
:
-
Lệnh chuyển hướng
meta refresh
tức thì: Kích hoạt ngay khi trang được tải trong trình duyệt. Google Tìm kiếm xem lệnh chuyển hướngmeta refresh
tức thì là lệnh chuyển hướng vĩnh viễn. -
Lệnh chuyển hướng
meta refresh
có độ trễ: Chỉ kích hoạt sau số giây bất kỳ do chủ sở hữu trang web đặt. Google Tìm kiếm xem lệnh chuyển hướngmeta refresh
có độ trễ là lệnh chuyển hướng tạm thời.
Hãy đặt lệnh chuyển hướng meta refresh
vào phần tử <head>
trong HTML hoặc trong tiêu đề HTTP có mã phía máy chủ. Chẳng hạn, đây là một lệnh chuyển hướng meta refresh
tức thì trong phần tử <head>
trong HTML:
<!doctype html> <html> <head> <meta http-equiv="refresh" content="0; url=https://example.com/newlocation"> <title>Example title</title> <!--...-->
Còn đây là một ví dụ về tiêu đề HTTP tương đương mà bạn có thể đưa vào bằng các tập lệnh phía máy chủ:
HTTP/1.1 200 OK Refresh: 0; url=https://www.example.com/newlocation ...
Để tạo lệnh chuyển hướng có độ trễ (mà Google xem là một lệnh chuyển hướng tạm thời), hãy đặt giá trị của thuộc tính content
thành số giây trễ của lệnh chuyển hướng đó:
<!doctype html> <html> <head> <meta http-equiv="refresh" content="5; url=https://example.com/newlocation"> <title>Example title</title> <!--...-->
Lệnh chuyển hướng location
bằng JavaScript
Google Tìm kiếm diễn giải và thực thi JavaScript bằng Dịch vụ kết xuất web sau khi hoàn tất quá trình thu thập dữ liệu URL.
Để thiết lập lệnh chuyển hướng JavaScript, hãy đặt giá trị của thuộc tính location
thành URL đích của lệnh chuyển hướng và đặt thuộc tính này trong khối lệnh ở phần đầu của tệp HTML. Ví dụ:
<!doctype html> <html> <head> <script> window.location.href = "https://www.example.com/newlocation"; </script> <title>Example title</title> <!--...-->
Lệnh chuyển hướng Crypto
Nếu không thể triển khai phương thức chuyển hướng truyền thống nào, bạn vẫn nên cố gắng cho người dùng biết rằng trang hoặc nội dung của trang đã di chuyển. Cách đơn giản nhất để làm điều này là thêm đường liên kết trỏ đến trang mới kèm theo lời giải thích ngắn gọn. Ví dụ:
<a href="https://newsite.example.com/newpage.html">Chúng tôi đã di chuyển! Hãy xem nội dung này trên trang web mới của chúng tôi!</a>
Cách này giúp người dùng tìm thấy trang web mới của bạn và Google có thể hiểu đây là một lệnh chuyển hướng crypto (giống như quái vật hồ Loch Ness, sự tồn tại của lệnh chuyển hướng này có thể vẫn còn gây tranh cãi, và không phải công cụ tìm kiếm nào cũng coi đây là một lệnh chuyển hướng chính thức).
Phiên bản thay thế của URL
Khi bạn chuyển hướng URL, Google sẽ theo dõi cả nguồn (URL cũ) và đích (URL mới) của lệnh chuyển hướng đó. Một trong hai URL này sẽ là phiên bản chính tắc, còn cụ thể là URL nào thì còn tuỳ thuộc vào những tín hiệu như đó là lệnh chuyển hướng tạm thời hay vĩnh viễn. URL còn lại sẽ trở thành tên thay thế của URL chính tắc. Tên thay thế là các phiên bản khác của URL chính tắc mà có thể người dùng dễ nhận ra và tin tưởng hơn. Tên thay thế có thể xuất hiện trong kết quả tìm kiếm khi cụm từ tìm kiếm của người dùng cho thấy URL cũ có thể sẽ đáng tin cậy hơn.
Ví dụ: Nếu bạn chuyển sang tên miền mới, rất có khả năng Google đôi khi vẫn cho thấy URL cũ trong kết quả dù đã lập chỉ mục URL mới. Điều này là bình thường. Khi người dùng đã quen với tên miền mới, các tên thay thế sẽ tự biến mất mà bạn không cần làm gì thêm.