Chuyển hướng link bằng Htaccess 301

Đôi khi bạn cần chuyển hướng link 301 ( Chuyển hướng vĩnh viễn link ) để cần thiết cho một số trường hợp đặt biệt khi đổi đường dẫn tĩnh hoặc chuyển vĩnh viễn link web cũ sang link web mới.

Hôm nay mình sẽ chia sẻ cho các bạn các cách chuyển link 301 bằng Htaccess .

Tệp Htaccess là gì?

Tệp .htaccess hoặc Hypertext Access là một tệp văn bản cấu hình điều khiển thư mục, cũng như bất kỳ thư mục con nào, nó nằm trên máy chủ web Apache. Nếu bạn sử dụng gói lưu trữ web dựa trên Linux, thuộc tính web của bạn có thể chạy trên Apache. Bạn có thể đã thấy tệp .htaccess trong các thư mục nhất định, đặc biệt nếu bạn đã triển khai WordPress, Joomla, Drupal hoặc bất kỳ phần mềm web quản lý nội dung nào khác.

Tệp .htaccess có thể bao gồm các hướng dẫn cụ thể cho máy chủ. Tệp này có thể cấu hình máy chủ để yêu cầu mật khẩu cho thư mục chứa nó. Tệp .htaccess cũng có thể được định cấu hình để tự động chuyển hướng người dùng đến một tệp hoặc trang chỉ mục khác, hạn chế hoặc cho phép người dùng dựa trên địa chỉ IP và tắt danh sách thư mục. Bạn có thể không bao giờ cần chỉnh sửa tệp .htaccess, nhưng nếu bạn làm như vậy, bạn phải đảm bảo rằng tệp được đặt tên là “.htaccess”, với khoảng thời gian ở phía trước và không có đuôi tệp .txt hoặc .htm.

Làm cách nào để bạn chuyển hướng một trang?

Ví dụ trang bạn tạo là domain.com/quy-dinh-su-dung.php mà muốn chuyển thành domain.com/quy-dinh-su-dung.html thì:

Redirect 301 /quy-dinh-su-dung.php http://www.domain.com/quy-dính-su-dung.html

http://www.domain.com có thể sửa thành domain của bạn, nếu bạn không sử dụng www có thể bỏ đi dòng này.

Làm cách nào để chuyển hướng toàn bộ trang web hoặc tên miền sang trang web hoặc miền mới?

Đôi khi bạn đổi domain cho đẹp thì đây là cách để chuyển toàn bộ link web cũ sang link web mới – cấu trúc link bài viết web cũ đã chuyển hết qua web mới trước nhé.

Redirect 301 / http://www.domain.com/

Làm thế nào để bạn chuyển hướng toàn bộ một trang web vào một thư mục con:

Ví dụ bạn cần chuyển tất cả các link dạng domain.com/bài viết thành domain.com/user/bài viết với user là thư mục bạn cần chuyển .

Redirect 301 / http://www.domain.com/user/

Làm thế nào để bạn chuyển hướng đến subdomain:

Ví dụ bạn có link web cũ là : domain.com thành subdomain.domain.com

Redirect 301 /subdomain http://www.domain.com/

Làm thế nào để bạn chuyển hướng link web sang đuôi khác nhưng giữ lại tên trang?

Ví dụ: Nếu bạn muốn : domain.com/baiviet.html thành domain.com/baiviet.php

RedirectMatch 301 (.*).html$ http://www.domain.com$1.php

Làm thế nào để bạn sử dụng tên bài viết cũ để chuyển hướng từ miền cũ sang tên miền mới?

Ví dụ: hiện tại domain : hocban.vn đổi sang tinhdeptrai.vn thì đây là cách bác tịnh nên làm để chuyển tất cả bài viết cũ sang bài viết mới mà không mất link

RewriteEngine on
RewriteBase /
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

đỏi http://ww.newdomain.com thành link domain mới của bạn.

Làm thế nào để bạn sử dụng link bài viết cũ  để chuyển hướng từ một tên miền phụ không www đến www?

Ví dụ: chuyển https://www.hocban.vn thành https://hocban.vn

RewriteEngine on
RewriteBase /
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

Làm thế nào để bạn sử dụng viết lại để chuyển hướng một tên miền đến vị trí www với thư mục con?

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} domain.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/directory/index.html [R=301,NC]

Làm thế nào để bạn sử dụng viết lại để chuyển hướng từ một miền cũ sang tên miền mới bao gồm đường dẫn đầy đủ và chuỗi truy vấn?

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*) http://www.newdomain.com%{REQUEST_URI} [R=302,NC]

Làm thế nào để bạn sử dụng viết lại để chuyển hướng từ một tên miền cũ với một thư mục con đến tên miền mới mà không có thư mục con, nhưng bao gồm đường dẫn đầy đủ và chuỗi truy vấn?

Ví dụ: chuyển từ: user.hocban.vn thành hocban.vn

các link dưới tùy theo web bạn mà thay đổi lại

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/user/(.*)$
RewriteRule ^(.*) https://www.hocban.vn/%1 [R=302,NC]

Làm thế nào để bạn viết lại và chuyển hướng URL với các tham số truy vấn với các tệp được đặt trong thư mục gốc?

Ví dụ: URL gốc là https://hocban.vn/index.php?id=3 và URL mới là https://hocban.vn/path-to-new-location/

RewriteEngine trên 
RewriteCond% {QUERY_STRING} id = 3 
RewriteRule ^ index.php $ / path-to-new-location /? [L, R = 301]

Có những quy tắc chuyển hướng htaccess 301 phổ biến mà tôi thấy mình đang tìm kiếm mỗi khi tôi xây dựng một trang web cho một khách hàng hoặc trợ giúp với một kế hoạch chuyển tiếp trang web khởi chạy lại . Vì vậy, tôi nghĩ rằng tôi sẽ tạo ra một nguồn tài nguyên mà tôi thấy hữu ích, nơi tôi có thể thu thập tất cả các quy tắc chung vào một chỗ để tiết kiệm thời gian cho mỗi dự án.

Tệp Htaccess là gì?

Tệp .htaccess hoặc Hypertext Access là một tệp văn bản cấu hình điều khiển thư mục, cũng như bất kỳ thư mục con nào, nó nằm trên máy chủ web Apache. Nếu bạn sử dụng gói lưu trữ web dựa trên Linux, thuộc tính web của bạn có thể chạy trên Apache. Bạn có thể đã thấy tệp .htaccess trong các thư mục nhất định, đặc biệt nếu bạn đã triển khai WordPress, Joomla, Drupal hoặc bất kỳ phần mềm web quản lý nội dung nào khác.

Tệp .htaccess có thể bao gồm các hướng dẫn cụ thể cho máy chủ. Tệp này có thể cấu hình máy chủ để yêu cầu mật khẩu cho thư mục chứa nó. Tệp .htaccess cũng có thể được định cấu hình để tự động chuyển hướng người dùng đến một tệp hoặc trang chỉ mục khác, hạn chế hoặc cho phép người dùng dựa trên địa chỉ IP và tắt danh sách thư mục. Bạn có thể không bao giờ cần chỉnh sửa tệp .htaccess, nhưng nếu bạn làm như vậy, bạn phải đảm bảo rằng tệp được đặt tên là “.htaccess”, với khoảng thời gian ở phía trước và không có đuôi tệp .txt hoặc .htm.

Quy tắc Htaccess chuyển hướng 301 phổ biến

Làm cách nào để bạn chuyển hướng một trang?

Chuyển hướng 301 /pagename.php http://www.domain.com/pagename.html

Làm cách nào để chuyển hướng toàn bộ trang web hoặc tên miền sang trang web hoặc miền mới?

Chuyển hướng 301 / http://www.domain.com/

Làm thế nào để bạn chuyển hướng toàn bộ một trang web vào một thư mục con?

Chuyển hướng 301 / http://www.domain.com/subfolder/

Làm thế nào để bạn chuyển hướng một thư mục con đến trang web khác nhau?

Chuyển hướng 301 / thư mục con http://www.domain.com/

Làm thế nào để bạn chuyển hướng một phần mở rộng tập tin nhưng giữ lại tên trang?

Ví dụ: Nếu bạn muốn một phần mở rộng .html sử dụng cùng tên tệp nhưng sử dụng phần mở rộng .php.

RedirectMatch 301 (. *). Html $ http: //www.domain.com$1.php

Làm thế nào để bạn sử dụng viết lại để chuyển hướng từ miền cũ sang tên miền mới?

RewriteEngine trên 
RewriteBase / 
RewriteRule (. *) Http://www.newdomain.com/$1 [R = 301, L]

Làm thế nào để bạn sử dụng viết lại để chuyển hướng từ một tên miền phụ không www đến www?

RewriteEngine trên 
RewriteBase / 
rewritecond% {http_host} ^ domain.com [nc] 
rewriterule ^ (. *) $ Http://www.domain.com/$1 [r = 301, nc]

Làm thế nào để bạn sử dụng viết lại để chuyển hướng một tên miền đến vị trí www với thư mục con?

RewriteEngine trên 
RewriteBase / 
RewriteCond% {HTTP_HOST} domain.com [NC] 
RewriteRule ^ (. *) $ Http://www.domain.com/directory/index.html [R = 301, NC]

Làm thế nào để bạn sử dụng viết lại để chuyển hướng từ một miền cũ sang tên miền mới bao gồm đường dẫn đầy đủ và chuỗi truy vấn?

Tùy chọn + FollowSymLinks 
RewriteEngine Trên 
RewriteRule ^ (. *) Http: //www.newdomain.com% {REQUEST_URI} [R = 302, NC]

Làm thế nào để bạn sử dụng viết lại để chuyển hướng từ một tên miền cũ với một thư mục con đến tên miền mới mà không có thư mục con, nhưng bao gồm đường dẫn đầy đủ và chuỗi truy vấn?

Tùy chọn + FollowSymLinks 
RewriteEngine Trên 
RewriteCond% {REQUEST_URI} ^ / subdirname /(.*)$ 
RewriteRule ^ (. *) Http://www.katcode.com/%1 [R = 302, NC]

Làm thế nào để bạn viết lại và chuyển hướng URL với các tham số truy vấn với các tệp được đặt trong thư mục gốc?

Ví dụ: URL gốc là http://www.website.com/index.php?id=3 và URL mới là http://www.website.com/path-to-new-location/

RewriteEngine trên 
RewriteCond% {QUERY_STRING} id = 3 
RewriteRule ^ index.php $ / path-to-new-location /? [L, R = 301]

Làm cách nào để chuyển hướng trang web sang HTTPS từ HTTP để loại bỏ nội dung trùng lặp?

Cách này đổi link dạng http://domain – thành https:domain

RewriteEngine on
RewriteCond %{HTTPS} on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

Cách này chuyển ngược lại từ http sang https

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}

Làm thế nào để bạn chuyển hướng một trang web cũ đến một tên miền mới và giữ lại đường dẫn URL?

RewriteEngine On
RewriteCond %{THE_REQUEST} /index.php HTTP [NC]
RewriteRule (.*)index.php$ /$1 [R=301,L]
RewriteEngine On
RewriteCond %{THE_REQUEST} /index.html HTTP [NC]
RewriteRule (.*)index.html$ /$1 [R=301,L]

Làm cách nào để bạn viết lại và thêm dấu gạch chéo vào URL :

Ví dụ đổi từ http://www.website.com/index.php?id=100 sang http://www.website.com/100/

RewriteEngine On
RewriteRule ^([^/d]+)/?$ index.php?id=$1 [QSA]

Làm thế nào để bạn chuyển hướng từ một tên miền phụ blog đến một thư mục blog?

Ví dụ: Chuyển hướng blog.oldsite.com sang www.newsite.com/blog/

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI}/ blog
RewriteRule ^(.*) http://www.somewhere.com/%{REQUEST_URI} [R=302,NC]
RewriteRule ^(.*) http://www.somewhere.com/blog/%{REQUEST_URI} [R=302,NC]

Qua các thủ thuật Chuyển hướng link bằng Htaccess 301 như trên mong sẽ giúp các bạn trong những lúc nào đó 😀

 



Không biết bạn đã từng đọc qua các nội dung dưới đây chưa nhỉ ?

guest
26 Comments
Inline Feedbacks
View all comments
Hoang <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">1</span><span style="color: #e91e63;">) </span>
Friend
Hoang (1)

Cho mình hỏi từ olddomain.com/* chuyển sang newdomain.com. Tức là tất cả các url của trang củ chỉ redirect về trang chủ của newdomain thì cú pháp như thế nào bác nhở

namg gano <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">1</span><span style="color: #e91e63;">) </span>
Friend

web của em mới không có traffic, Anh xem có cách nào không ạ? https://namgano.com/

Linh <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">1</span><span style="color: #e91e63;">) </span>
Friend
Linh (1)

Anh ơi thế làm thế nào mà bài viết cũ, mình vô sửa url nó tự động chuyển từ cũ sang mới ạ: Ví dụ abc.com/toi-day-ne ->> abc.com/toi-o-day-co-ne-ban ạ/?? Vẫn là sửa trên link đã tạo ý ạ. E bị lỗi 404 cho cái link cũ còn nó tự thành link url mới ko liên quan link cũ ko tự chuyển hướng cũ sang link sửa mới :(((

Ngôn Tình Plus <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">1</span><span style="color: #e91e63;">) </span>
Friend
Đã trả lời  Linh

có plugins hỗ trợ đó bạn , sau khi cài plugins thì vào google search control để khai báo luôn.

tuoi tre <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">1</span><span style="color: #e91e63;">) </span>
Friend

mình trước đó dùng blogger giờ chuyển qua xenforo vậy làm cách nào chuyển link các bài viết đó qua ạ.khoảng 30 bài ad ạ
cảm ơn admin

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  tuoi tre

Bác tìm hiểu về import data trên xenforo nhé, còn nếu căng quá thì copy dán thôi chứ sợ bác ngâm cứu ra còn lâu hơn là copy dán nữa 😀 3000 bài thì nhiều chứ 30 bài thì ít bác nhé !

David Do <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">16</span><span style="color: #e91e63;">) </span>
Friend

Làm sao để chuyển hết link từ /tags/ sang /tag/ hả bác

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  David Do

Dịch từ tags thành tag bằng Locotranslate bác nhé !

NT Ngân <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">1</span><span style="color: #e91e63;">) </span>
Friend
NT Ngân (1)

Cách đây 1 tuần, e có xóa hơn 40 bài viết ko có giá trị trên website. Nhưng hôm nay e kiểm tra trên Google thì những bài viết đó vẫn đang hiển thị. Vậy có cách nào để những đường link đó biến mất hoàn toàn khỏi Google ko a nhỉ. Chứ để như vậy người ta nhấp vào mà ko thấy bài viết nào thì cũng ko hay lắm. Hiện tại e có dùng plugin Redirect bài viết lỗi về Trang chủ. Nhưng e muốn cho những bài viết đó mất hẳn hoàn toàn trên Google thì có… Read more »

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  NT Ngân

Bạn truy cập công cụ xóa liên kết lỗi thời của Google theo đường dẫn này nhé: https://search.google.com/search-console/removals (nhớ chọn website có những URL cần xóa nữa bạn nhé !)

Kim Việt <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">3</span><span style="color: #e91e63;">) </span>
Friend
Kim Việt (3)

Ad cho tôi hỏi. tôi có link http://www.domain.com/san-pham, link này google đã index và không thay đổi được. bây giờ muốn thêm phần mở rộng .html vào. Khi click http://www.domain.com/san-pham thì htaccess sẽ tự động thêm .html và link thành http://www.domain.com/san-pham.html, hoặc có cách nào cho 2 link http://www.domain.com/san-phamhttp://www.domain.com/san-pham.html cùng chạy được không, xin cảm ơn

Kim Việt <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">3</span><span style="color: #e91e63;">) </span>
Friend
Kim Việt (3)
Đã trả lời  Đạt Nguyễn

Link động bạn ơi, có thể m.domain.com/abc cấp 1 cấp 2 cấp 3, đối với trang manager có cấp 4 lận

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  Kim Việt

Căng á, bác Đạt làm thử vụ này chưa chứ em là em chưa làm rồi á :v (Tịnh Nguyễn) | Tiện thể cho em hỏi thớt là vì sao bác muốn thêm phần link .html vậy ? Nó có tác dụng gì ta ?

Kim Việt <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">3</span><span style="color: #e91e63;">) </span>
Friend
Kim Việt (3)
Đã trả lời  Hocban.vn

Vì redirect mobi m.domain.com, .html là đặc tính 1 phần nào đó ggle yêu cầu. Mặc định khi auto redirect đã có .html nhưng khi ngứa ngáy viết tay thì lại quên nên err 500

Phước Đt <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">36</span><span style="color: #e91e63;">) </span>
Friend

Hay quá bác Đạt ơi(y)

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  Phước Đt

Cảm động thay cho bác ĐẠT :v

Minh Khánh <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">37</span><span style="color: #e91e63;">) </span>
Friend
Minh Khánh (37)

Dùng plugin cho nhanh, cái này quản lí chết mệt

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  Minh Khánh

Có nhiều anh em không thích dùng plugin nên họ xài kiểu này đó bác :v E thì tùy cái sẽ dùng plugin và tùy cái ưu tiên sửa / thêm code vào.

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  Đạt Nguyễn

Ấy ấy, theo em thì khác á nghen :v | Theo em thì không cần phải quá tối ưu cho xanh lè điểm Yoast SEO (cam cũng được rồi), hình ảnh ko cần nén cho siêu nhẹ,…. ko cần cache quá đà,…. tối ưu điểm page Speed,…. Nói chung là nếu chúng nó tự động ngon thì thôi, còn không thì ko cần quá cố gắng. Còn về viết bài cũng vậy, nếu mà bài quá xuất sắc thì thôi khỏi nói, còn nếu trung bình thì cũng ok, không cần quá dài hay nhồi nhét từ khóa để SEO,… Read more »

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  Đạt Nguyễn

Là sao bác ĐẠT, bài này của bác rớt khỏi tóp 3 hả ? Em vừa kiểm tra lại nó vẫn vị trí thứ 3 (duyệt chế độ khách thì độ chính xác cao hơn ẩn danh).

Ý bác cũng hay, bài thường xuyên sửa đổi, bổ sung thì chắc là nó ưu cmn tiên rồi, haha.

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin

Bài viết này có vẻ bác đầu tư hơi bị nhiều, như thế này thì quá tốt, nhưng mà em vẫn khuyến cáo bác viết bài đơn giản để bác cảm thấy nó thật dễ dàng và không tốn nhiều thời gian của bác.

À nhưng mà, khi bác viết bài này cũng là cơ hội để bác tìm hiểu và rà soát lại kiến thức của mình ấy nhỉ, đó là chưa nói đến đoạn sau này quên lấy ra mà xài :v

Hocban.vn <span style="color: #e91e63;">(</span><span class="wpdiscuz-comment-count">2,677</span><span style="color: #e91e63;">) </span>
Admin
Đã trả lời  Hocban.vn

Được đó bác, cơ bản em oánh giá bài viết này rất cao về phần nội dung, còn phần YOAST SEO bác chưa điền thông tin nên nó chưa xong.

Tuy nhiên, em vừa kiểm tra câu khóa “Chuyển hướng link bằng Htaccess 301” bác đứng tóp 3 Google nhé !