[Mẹo] Cách redirect 301 bằng file htaccess thay đổi đường dẫn Seo

Hướng dẫn cách redirect 301 bằng file htaccess thay đổi đường dẫn Seo
Định tuyến 301 trong tệp tin .htaccess của bạn cho phép các công cụ tìm kiếm và những người khác biết rằng liên kết cũ đã được thay thế bằng một tệp mới. Đây là phương pháp được đề xuất để chỉ đạo giao thông từ một trang hiện có.

Một số sử dụng phổ biến của một 301 chuyển hướng .htaccess:

  • Chuyển hướng các tệp riêng lẻ trên cùng một tên miền: Một tệp tin cũ đã di chuyển vị trí, hoặc thông tin bây giờ được chứa trong một tệp mới.
  • Chuyển hướng miền cũ sang tên miền mới: Bạn đã di chuyển trang web từ tên miền cũ sang tên mới và bạn muốn bất kỳ liên kết cũ nào đi tới trang web mới. Buộc www. phiên bản của miền sẽ được sử dụng hoặc bạn có thể buộc không www. phiên bản của tên miền sẽ được sử dụng. Khách truy cập truy cập và liên kết đến trang web của bạn theo nhiều cách, chẳng hạn như example.com và www.example.com và bạn có thể thiết lập một cách làm phương pháp ưa thích mà trang web của bạn hiển thị.
  • Chuyển hướng tất cả các tệp với phần mở rộng nhất định: Bạn đã từng có tất cả các tệp của mình sử dụng tiện ích mở rộng như .php và đã chuyển đổi mọi thứ sang .htm để sử dụng chuyển hướng 301, bạn có thể cập nhật tất cả liên kết để sử dụng tiện ích mở rộng mới.
Bạn có khả năng thiết lập chuyển hướng cho một tên miền trong giao diện cPanel hoặc directadmin, bạn cũng có thể thêm các chuyển hướng bằng tay bằng cách sửa đổi trực tiếp tập tin .htaccess của bạn.Truy cập tệp tin .htaccess của bạn, nằm ngang hàng với thư mục chính chứa website.

Trên máy chủ Linux, bạn sẽ sử dụng tệp .htaccess của mình để thực hiện chuyển hướng 301 cho các trang của bạn.

1. Chuyển hướng cho các địa chỉ cụ thể

Nếu bạn đang có một liên kết dạng example.com/oldfile.htm và muốn chuyển thành newfile.htm thêm dòng sau vào file htaccess:

Redirect 301 /oldfile.htm /newfile.htm
single file 301 redirect

Nếu bạn đang có một liên kết dạng example.com/oldfile.htm và bạn muốn chuyern thành example.net/newfile.htm:

Redirect 301 /oldfile.htm http://example.net/newfile.htm
single file domain 301 redirect

2. Chuyển hướng cả tên miền cũ sang tên miền mới

Nếu bạn đã di chuyển trang web sang tên miền mới và bạn muốn chuyển hướng các URL trên tên miền cũ, ví dụ với tên miền example.com, và chuyển hướng sang tên miền example.net bạn cần thiết lập chuyển hướng 301 cho tên miền example.com

Mã chuyển hướng từ example.com trong file .htaccess:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ http://example.net/$1 [L,R=301,NC]
full domain 301 redirect

Chuyển hướng tên miền từ không có www thành có www.

Đôi khi bạn muốn người dùng gõ URL của bạn là example.com và bạn muốn website tự chuyển thành www.example.com sử dụng các dòng lệnh bên dưới cho file .htaccess

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]
force www 301 redirect

Và chuyển hướng từ có www. sang không sử dụng www

Ngược lại với ở trên, bạn muốn chuyển từ có www thành không có www.

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301,NC]
force non www 301 redirect

Chuyển hướng phần mở rộng của URL

Đôi lúc bạn lại muốn chuyển hướng dạng phần mở rộng của URL kiểu example.com/file.php thành example.com/file.htm

RewriteEngine On
RewriteCond %{REQUEST_URI} .php$
RewriteRule ^(.*).php$ /$1.htm [R=301,L]
file extension 301 redirect

Ok, chúc bạn thành công và xin lưu ý chuyển hướng cẩn thận vì có thể làm mất thứ hạng website của bạn trên Google.