Dịch vụ kiểm tra tối ưu SEO nội bộ trực tuyến. Sự hiện diện trong chỉ mục

Chuyển hướng 301 hoặc Chuyển hướng vĩnh viễn 301 là quy tắc tự động chuyển hướng người dùng đến một địa chỉ trang khác. Với sự trợ giúp của nó, bạn có thể hợp nhất các trang cũ với trang mới hoặc di chuyển trang web sang một tên miền khác, xóa nhiều trang trùng lặp khỏi trang web và hơn thế nữa. Vô cùng thứ hữu ích- vì vậy bạn cần học cách làm điều đó một cách chính xác!

Ngoài ra, với chuyển hướng 301, TCI (đã đọc) và PR được hợp nhất - tức là. bạn có thể lưu trữ giá trị cũ trong địa chỉ mới. Bạn có thể không thua chút nào trong mắt các công cụ tìm kiếm. Hãy chuyển từ lý thuyết sang thực hành.

Cách thiết lập chuyển hướng 301 trong htaccess

Tệp có tên .htaccess nằm ở danh Mục chính trang web của bạn. Đây là một tệp dịch vụ trong đó chúng tôi sẽ chỉ định các quy tắc dán. Mở tệp bằng notepad (Tôi khuyên dùng notepad++ để tránh các vấn đề về mã hóa). Đừng quên rằng đây là một trong những điểm quan trọng trong.

Mẫu chung cho .htaccess mà chúng tôi sẽ sử dụng:

Tùy chọn +FollowSymLinks RewriteEngine On #Here chúng tôi chỉ định các quy tắc

Tất cả các quy tắc được viết dưới dạng:

RewriteCond [So sánh] [Điều kiện] [Cờ] RewriteCond [So sánh] [Điều kiện] [Cờ] Quy tắc viết lại [Mẫu] [Thay thế] [Cờ]

Bây giờ chúng ta hãy trực tiếp giải quyết vấn đề chuyển hướng và xem các ví dụ cụ thể.

Mình đã viết một bài về rồi nhưng đề phòng thôi mình sẽ tóm tắt ở đây để các bạn thuận tiện hơn khi sử dụng trang.

Ví dụ về sử dụng chuyển hướng 301 Chuyển hướng từ index.php về trang chủ

Để thiết lập nó, bạn cần viết đoạn mã sau vào tệp của mình, đoạn mã này sẽ chuyển hướng khách truy cập từ site.ru/index.php sang site.ru:

RewriteCond %(THE_REQUEST) ^(3,9)\ /index\.php\ HTTP RewriteRule ^index\.php$ http://site.ru/

Nếu bạn cũng cần chuyển hướng từ index.html thì chỉ cần thay thế .php bằng .html trong đoạn mã trên

Dán bí danh trang web

Nếu bạn có nhiều miền và muốn chuyển hướng tất cả chúng đến trang chính, thì chúng tôi sử dụng:

RewriteCond %(HTTP_HOST) ^vash-sait.com$ RewriteCond %(HTTP_HOST) ^www.vash-sait.com$ RewriteCond %(REQUEST_URI) !^/robots.* RewriteRule ^(.*)$ http://vash- sait.ru/$1

Hãy chú ý đến 2 dòng đầu tiên, nó biểu thị một bản sao trong Zone.com, nếu bạn có một hoặc nhiều vùng khác thì hãy thêm quy tắc.

Chuyển hướng từ www sang không có www

Tôi đã mô tả phương pháp này trước đó, nhưng tôi sẽ lặp lại nó. Để dán gương và chọn tên miền chính không có www, chúng tôi viết:

RewriteCond %(HTTP_HOST) ^www.site\.ru$ RewriteRule ^(.*)$ http://site.ru/$1

Chuyển hướng từ tên miền không có www sang tên miền có www

Hành động này trái ngược với hành động trước, chỉ có gương chính ở đây www.site.ru:

RewriteCond %(HTTP_HOST) ^site\.ru$ RewriteRule ^(.*)$ http://www.site.ru/$1

Chuyển hướng 301 của các trang có và không có dấu gạch chéo

Đây là một loại trùng lặp khác, ở đây chúng tôi sẽ hợp nhất các trang site.ru/category/ và site.ru/category, như bạn có thể thấy, không có dấu gạch chéo ở cuối URL thứ hai:

RewriteCond %(REQUEST_FILENAME) !-d RewriteCond %(REQUEST_URI) ^(.+)/$ RewriteRule ^(.+)/$ /$1

Ngược lại, nếu bạn cần để lại dấu gạch chéo ở cuối URL thì bạn cần tùy chọn này:

RewriteBase / RewriteCond %(REQUEST_FILENAME) !-f RewriteCond %(REQUEST_URI) !(.*)/$ RewriteRule ^(.*[^/])$ $1/

Nếu vì lý do nào đó mà bạn có các URL như site.ru/category//article.html, thì hãy sử dụng mã:

RewriteCond %(REQUEST_URI) ^(.*)//(.*)$ RewriteRule . %1/%2

trong đó, “//” có thể được thay thế bằng “—” hoặc bất kỳ ký tự kép nào trong URL.

Thay thế thể loại đại chúng

Tình cờ là bạn đã đổi tên một danh mục nhưng hàng nghìn URL được gán cho danh mục đó. Để tránh bị già khi viết hàng ngàn chuyển hướng giống hệt nhau, hãy sử dụng:

Quy tắc viết lại ^(.*)/old-category/(.*)$ $1/new-category/$2

RewriteRule danh mục cũ /(.*) / danh mục cũ /$1

Chuyển hướng đến trang mới

Cách chuyển hướng đơn giản nhất từ ​​trang này sang trang khác, chỉ cần viết như thế này:

Chuyển hướng 301 /old-post.html http://new-site.ru/new-post.html

Trong đó old-post.html là trang cũ của bạn và new-site.ru/new-post.html là một trang mới và nó có thể nằm trên bất kỳ tên miền nào (bao gồm cả tên miền hiện tại của bạn).

Chuyển hướng cho url với các tham số

Các trang có tham số khó chuyển hướng hơn; lấy ví dụ về http://site.ru/page.php?sort=articles. Tham số ở đây là “sort=articles”. Mã sẽ như sau:

RewriteCond %(QUERY_STRING) Sort=articles RewriteRule .* http://site.ru/page.php?

Làm việc với tiện ích mở rộng

Chúng tôi xóa .html khỏi url (để xóa .php, đừng quên thay thế $1.html bằng $1.php):

Quy tắc viết lại ^(([^/]+/)*[^.]+)$ /$1.html [L]

Chúng tôi thay đổi .php thành .html trong URL và ngược lại (đừng quên hoán đổi vị trí trong mã):

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

Sửa chuyển hướng 301 tới tên miền mới

Tôi đã nhấn mạnh điểm này một cách riêng biệt, bởi vì... nó liên quan nhiều hơn đến việc chuyển sang tên miền khác. Có tâm điểm, điều này không thể bỏ qua lệnh chỉnh sửa robot - nó được chỉ định trên dòng 3 của mã.

RewriteCond %(REQUEST_FILENAME) robots.txt$ RewriteRule ^([^/]+) $1 [L] RewriteCond %(HTTP_HOST) ^site\.ru RewriteRule ^(.*)$ http://new-site.ru/$1 RewriteCond %(HTTP_HOST) ^www.site\.ru RewriteRule ^(.*)$ http://new-site.ru/$1

Với sự trợ giúp của những công cụ đơn giản như vậy, chúng tôi sẽ loại bỏ các trang trùng lặp, từ đó cải thiện chất lượng của chúng tôi. tối ưu hóa nội bộ và theo đó là chất lượng của trang web.

Nếu bạn có bất kỳ câu hỏi nào, hãy viết bình luận - chúng tôi sẽ giải quyết :)

Xin chào các độc giả thân mến của trang blog. Nói tóm lại, chuyển hướng 301 thường được sử dụng khi cần loại bỏ sự trùng lặp, cũng như duy trì lưu lượng truy cập hiện có và tất cả các chỉ số tin cậy của các trang trên trang web, bao gồm cả liên kết từ các liên kết ngược (backlinks).

Một trong những công cụ hiệu quả nhất để thiết lập chuyển hướng 301 là tập tin bổ sung config.htaccess hiện diện trên các máy chủ có phần mềm Apache. Những máy chủ web như vậy được sử dụng vì chúng tối ưu nhất để giải quyết các vấn đề khác nhau, nếu chúng ta tính đến các tiêu chí như hiệu quả, chi phí vận hành và chức năng.

Hôm nay chúng ta sẽ cố gắng tìm hiểu tất cả các chi tiết, khi nào và trong trường hợp nào chuyển hướng 301 sẽ được sử dụng? giải pháp tốt nhất, cũng như những chỉ thị cần viết trong .htaccess trong từng trường hợp cụ thể để đảm bảo rằng nhiệm vụ được hoàn thành.

Chuyển hướng 301 là gì và khi nào nên sử dụng nó?

ĐẾN Quảng bá SEO tài nguyên của bạn để đạt hiệu quả cao nhất có thể, bạn cần phải tính đến tất cả các khía cạnh có thể ảnh hưởng đến việc tối ưu hóa trang web. Chúng bao gồm cơ chế mà chúng ta đang xem xét ngày nay. Chuyển hướng 301 (chuyển hướng vĩnh viễn) là gì và khi nào nó được sử dụng?

Về mặt kỹ thuật, đây không gì khác hơn là phản hồi của máy chủ HTTP với mã 301, thông báo rằng mã trước đó đã được di chuyển vĩnh viễn. Trong thực tế nó trông như thế này. Khi nhập địa chỉ cũ vào Thanh tìm kiếm trình duyệt tự động chuyển hướng người dùng đến một URL mới, sau khi thiết lập chuyển hướng, URL này sẽ là đối tượng mục tiêu.

Dưới đây tôi sẽ chỉ ra một số tình huống cơ bản khi sử dụng chuyển hướng vĩnh viễn không chỉ hữu ích mà còn cực kỳ cần thiết. Vì vậy, chuyển hướng 301 được sử dụng trong trường hợp:

  • URL của trang cũ đã bị thay đổi vì một trong những lý do, trong đó có thể có nhiều lý do (chúng tôi sẽ nói về một số lý do bên dưới);
  • cần loại trừ sự xuất hiện của các trang trùng lặp (có nội dung hoàn toàn giống hệt nhau) của cùng một trang, mở ở các URL khác nhau. Điều này cũng bao gồm các bản sao hoàn chỉnh của tài nguyên. Ví dụ: những tên miền có WWW và không có tiền tố này, cũng như những tên miền phản ánh trang web chính;
  • chuyển sang tên miền mới ( và );

Tại sao việc chuyển hướng vĩnh viễn lại quan trọng đến vậy và cuối cùng nó mang lại cho chúng ta những gì? Rất nhiều, và tôi đã đề cập đến điều này ngay từ đầu ấn phẩm. Tuy nhiên, tôi sẽ nhắc bạn một lần nữa, vì điều này cực kỳ quan trọng xét từ quan điểm quảng bá trang web.

Sau đó cài đặt chính xác Chuyển hướng 301 đến trang có URL mới từ tài liệu cũ sẽ gửi tất cả sự tin cậy mà nó đã tích lũy được, bao gồm cả liên kết được truyền bởi các liên kết ngược, cũng như lưu lượng truy cập của khách truy cập, một số trong đó có thể bao gồm các khách hàng bạn đã có được hoặc những người đăng ký thường xuyên .

Nhưng tôi thu hút sự chú ý của bạn đến những điều sau đây. Chuyển hướng (đặc biệt với số lượng lớn) không phải lúc nào cũng tốt, vì vậy bạn không nên sử dụng chúng một cách thiếu suy nghĩ. Tất nhiên, các công cụ tìm kiếm thường tính đến các chuyển hướng vĩnh viễn (và việc chuyển tất cả các đặc điểm từ URL cũ sang mới biết điều đó bảo đảm).

Tuy nhiên, tôi vẫn khuyên bạn chỉ nên sử dụng chúng trong trường hợp bạn thực sự không thể làm gì nếu không có những biện pháp này. Hơn nữa, nếu bạn sử dụng chuyển hướng vĩnh viễn không chính xác, bạn có thể không sửa mà ngược lại, khiến tình hình trở nên tồi tệ hơn. Ngoài ra, trong một số trường hợp, nó được sử dụng để loại bỏ sự trùng lặp (tuy nhiên, nó cũng phù hợp như một biện pháp bổ sung).

Chuyển hướng vĩnh viễn khi URL trang thay đổi

Trong quá trình phát triển một dự án, các tình huống có thể nảy sinh khi cần phải tổ chức lại cấu trúc của nó. Ví dụ: di chuyển một số bài viết sang các phần khác (tất nhiên nếu chúng được hiển thị thông qua các danh mục chẳng hạn), thay thế các liên kết cố định bằng hoặc chỉ cần thêm chúng vào URL từ khóađiều đó đã bị bỏ lỡ trước đó. Trong tất cả các trường hợp này, bạn có thể áp dụng chuyển hướng vĩnh viễn, nhưng trước tiên hãy đánh giá trạng thái tài nguyên của bạn.

Nếu trang web còn rất trẻ (2-3 tháng) và bạn chưa có thời gian để tiến hành đúng cách tối ưu hóa bên ngoài(nhận đủ khối lượng liên kết từ bên ngoài) những trang có URL mà bạn muốn thay đổi và nếu lưu lượng truy cập trên chúng nhỏ, cùng với việc hoàn toàn thiếu nhận xét về các bài viết, thì tốt hơn là bạn chỉ cần xóa các trang web đó.

Sau khi xóa, chúng sẽ có trạng thái lỗi 404 (không nên có nhiều lỗi do tài nguyên còn non, điều này cũng rất quan trọng) và sẽ dần dần bị loại khỏi chỉ mục của công cụ tìm kiếm. Trong trường hợp này, tổn thất sẽ là tối thiểu (vì đặc tính trọng lượng trang đã xóa sẽ rất ít), nhưng bạn sẽ bảo toàn cấu trúc của tài nguyên web ở dạng “thuần túy” và đây là một điểm cộng.

Nhưng nếu trang web của bạn đã đạt được sự tin tưởng nhất định từ các công cụ tìm kiếm, mức độ phổ biến đối với người dùng và chứa hàng trăm trang, thì bạn không thể thiếu chuyển hướng 301 khi thay đổi URL. Mặt khác, nếu bạn quyết định xóa các trang có URL cũ, tổn thất về lưu lượng truy cập và trọng lượng sẽ rất nghiêm trọng.

Sẽ mất rất nhiều thời gian cho đến khi các trang web có địa chỉ mới được các công cụ tìm kiếm lập chỉ mục và trọng lượng cũng như lưu lượng truy cập trước đó liên quan đến chúng được khôi phục. Nếu bạn thiết lập chuyển hướng vĩnh viễn thì mọi thứ sẽ diễn ra mà hầu như không có hậu quả có hại.

Nhu cầu sử dụng chuyển hướng 301 tăng lên gấp nhiều lần nếu bạn định chuyển sang CMS mới() hoặc thay đổi tất cả các phần của tài nguyên, nói cách khác là thay đổi hàng loạt URL cùng một lúc.

Các trang trùng lặp (bản sao) của trang web có và không có dấu gạch chéo ở cuối, cũng như với index.php

Vì vậy, chúng tôi biết rằng nội dung trùng lặp cản trở rất nhiều đến việc quảng bá trang web. Vì vậy, bạn nên tự mình hiểu rõ những URL nào có thể được hình thành để mở các trang có nội dung hoàn toàn giống hệt nhau. Điều này sẽ cho bạn cơ hội để khắc phục vấn đề một cách kịp thời.

Trong điều kiện phát triển hiện đại sức mạnh internet nhiều lý do khác nhau Các quản trị viên web rất thường xuyên xử lý các bản sao, khi tất cả các trang của một trang web đều có sẵn tại hai địa chỉ trở lên.

Những tấm gương như vậy cần phải được dán lại với nhau và chính bạn phải chỉ ra cho các công cụ tìm kiếm tên miền chínhđể tránh làm giảm trọng lượng của các trang web và do đó làm giảm vị trí của chúng trong kết quả tìm kiếm dẫn đến lưu lượng truy cập giảm sau đó. Đây là nơi chuyển hướng vĩnh viễn sẽ thích hợp. Dưới đây chúng tôi sẽ xem xét các trường hợp trùng lặp phổ biến nhất.

Theo tôi, họ là ví dụ nổi bật nhất. Tôi đã viết về việc dán chúng một cách chi tiết, vì vậy bạn có thể nghiên cứu kỹ vấn đề này bằng cách nhấp vào liên kết được cung cấp.

Sự xuất hiện của các bản sao như vậy với phần cuối là index.php và/hoặc index.html, index.htm (tùy thuộc vào cài đặt máy chủ), cũng như có và không có dấu gạch chéo ở cuối, có liên quan đến cấu trúc của các URL được sử dụng để điều hướng đến một thư mục cụ thể trên máy chủ. Nếu URL kết thúc bằng dấu gạch chéo “/”, thì đây là lệnh để trình xử lý máy chủ hiển thị chính xác nội dung của thư mục (folder), trong đó bao gồm các tệp nằm trong đó:

Http://site.ru/folder/

Nhưng nếu không có dấu gạch chéo thì tệp sẽ được truy cập:

Http://site.ru/folder

Trong trường hợp này, máy chủ web sẽ tìm kiếm một tệp có tên là “thư mục”. Vì các máy chủ chủ yếu sử dụng Unix-like hệ điều hành(thường là Linux), trong đó phần mở rộng tệp theo sau tên và dấu chấm là không bắt buộc (đây là điểm khác biệt giữa chúng với Windows), thì điều này khá logic.

Sau khi trình xử lý không tìm thấy tệp như vậy, nó sẽ đoán rằng dấu gạch chéo bị thiếu trong URL và do đó nó cần hiển thị thư mục, điều này sẽ thực hiện thành công.

Nhưng máy chủ được cấu hình theo cách mà vì lý do bảo mật, nó không thể hiển thị các tệp dịch vụ, vì vậy khi truy cập vào một thư mục, nó bắt đầu tìm kiếm trong thư mục này một đối tượng có tên là chỉ mục, đối tượng mà cuối cùng nó sẽ cung cấp.

Thường xuyên Tên miền site đại diện cho tên của thư mục gốc, vì vậy bên dưới là địa chỉ sau trong trường hợp chung về cơ bản đưa ra lệnh để hiển thị nội dung của nó:

http://site.ru/

Tất cả điều này về mặt lý thuyết đều liên quan đến các tệp được đặt trên máy chủ. Tuy nhiên, trong hầu hết các trường hợp, hệ thống quản lý nội dung (CMS) được cài đặt để quản lý các trang web, bao gồm việc tạo các trang (trang chủ, phần, bài viết, v.v.) một cách nhanh chóng. Ví dụ: trong WordPress, điều này đạt được bằng cách sử dụng , thực hiện tác vụ như vậy.

Do đó, nếu bạn nhập URL được trình bày ở trên vào thanh tìm kiếm của trình duyệt, bạn sẽ được đưa đến trang web chính và không nơi nào khác. Tuy nhiên, theo quy định chung Cài đặt máy chủ, nó có thể mở tại địa chỉ này (và sẽ có cùng nội dung):

http://site.ru/index.php

Nhân tiện, điều này cũng đúng với các trang web khác, ví dụ: danh mục (tiêu đề):

Http://site.ru/category/index.php

Và đây là những bản sao cần được loại bỏ bằng mọi giá thông qua chuyển hướng vĩnh viễn tương tự trong .htaccess. Tôi chắc chắn sẽ cung cấp giải pháp cho vấn đề này không chỉ liên quan đến các URL kết thúc bằng index.php mà còn các tùy chọn khác trong phần cuối của bài viết.

Để hiểu rõ hơn về tất cả các sắc thái, tôi đặc biệt giới thiệu cho bạn nơi bạn sẽ tìm hiểu rằng đối với các trang của trang web, các tùy chọn URL có và không có dấu gạch chéo ở cuối là chính xác theo quan điểm cú pháp và hoàn toàn bằng nhau trong mắt PS.

Hơn nữa, điều này áp dụng cho tất cả các trang web, bao gồm các danh mục giống nhau:

Http://site.ru/category http://site.ru/category/

hoặc bài viết (mục):

Http://site.ru/category/entry http://site.ru/category/entry/

Các trang tại các địa chỉ này là một phần của các bản sao khác nhau của cùng một trang và do đó, là các trang trùng lặp, bị các công cụ tìm kiếm xem xét tiêu cực. Do đó, bạn chỉ được chọn một máy nhân bản chính và “cung cấp” nó cho các công cụ tìm kiếm, việc này có thể được đảm bảo thực hiện bằng cách sử dụng chuyển hướng vĩnh viễn (301).

Nhân tiện, nếu bạn sử dụng WordPress, hãy nhập cấu trúc URL được yêu cầu cho tất cả các trang trên trang web. Bạn có thể tùy chỉnh nó theo ý muốn, không chỉ có hoặc không có dấu gạch chéo mà còn với bất kỳ phần kết thúc nào khác.

Ví dụ: nhiều quản trị viên web thích các địa chỉ trang có phần mở rộng .html ở cuối, có giao diện cuối cùng quen thuộc với người dùng, đại đa số trong số họ đã cài đặt Windows (trong đó sự hiện diện của tiện ích mở rộng là bắt buộc).

Nhưng đó chỉ là cảnh đẹp, không có gì hơn (nhân tiện, tôi không chia sẻ những thú vui này). Như đã lưu ý ở trên, tất cả các tùy chọn URL, bao gồm cả các địa chỉ kết thúc bằng dấu gạch chéo và không có dấu gạch chéo, đều hoàn toàn tương đương theo quan điểm thực tế.

Nên chủ động chứ không nên đợi Yandex hay Google tự xác định gương chính. Rốt cuộc, bạn sẽ không biết công cụ tìm kiếm ưu tiên cái nào hơn. Và tình huống như vậy có thể làm chậm đáng kể việc quảng bá tài nguyên web.

Rốt cuộc, PS sẽ loại trừ khỏi chỉ mục các trang của một máy nhân bản không chính (việc lấp đầy cơ sở dữ liệu với một loạt nội dung vô dụng) mà nỗ lực quảng cáo của bạn có thể đã nhắm tới. Điều này dẫn đến việc mất vị trí trong kết quả tìm kiếm và do đó mất lưu lượng truy cập và sự tin cậy. Rùng mình.

Tuy nhiên, ngay cả trong trường hợp xấu nhất, việc thực hiện các bước để thiết lập chuyển tiếp vĩnh viễn sẽ giúp giải quyết vấn đề, ít nhất bằng cách này bạn có thể ngăn chặn sự hồi quy thêm.

Kiểm tra sự hiện diện của chuyển hướng vĩnh viễn cho mỗi trang web trùng lặp

Nhưng trước tiên, bạn nên kiểm tra xem mọi thứ đang diễn ra như thế nào với trang web của bạn. Mọi thứ đều có thể cài đặt cần thiếtđã được sản xuất bằng cách này hay cách khác thì không có gì phải lo lắng. khiêm tốn nhất và đường tắt kiểm tra xem chuyển hướng 301 có hoạt động không tình huống cần thiết, điều này là để nhập lần lượt các URL khác nhau vào thanh địa chỉ:

//goldbusinessnet..com/optimizatsiya-i-raskrutka-saita/index.php

Và hãy xem điều gì xảy ra tiếp theo. Ví dụ: trên blog của tôi, tùy chọn đầu tiên là tùy chọn chính, do đó, việc chuyển hướng xảy ra khi nhập URL thứ hai và thứ ba. Nói cách khác, những tấm gương này đã được dán lại với nhau. Nếu khi bạn nhập cả ba địa chỉ, cùng một trang sẽ mở ra nhưng thành phần của URL mỗi lần không thay đổi (nghĩa là không có chuyển hướng), thì đã xảy ra sự cố.

Nhưng có nhiều cách nâng cao hơn để kiểm tra sự trùng khớp của tên miền và sự hiện diện của chuyển hướng. Ví dụ: chúng bao gồm cơ hội hỏi chính các công cụ tìm kiếm để quản trị viên web thực hiện việc tối ưu hóa đó. Ví dụ: để kiểm tra xem có chuyển hướng từ URL có index.php sang URL không có phần cuối này hay không, đối với Yandex, bạn cần nhập truy vấn sau vào thanh tìm kiếm:

Url:trang web | url:trang web/index.php

Sau khi nhấp vào nút "Tìm", bạn sẽ nhận được câu trả lời. Nếu có một kết quả (như trong ảnh chụp màn hình bên dưới), thì mọi thứ đều “OK”. Nói cách khác, việc chuyển hướng đã được hoàn thành:


Tất cả những gì bạn phải làm là tìm ra trang nhân bản nào là trang chính của Yandex. Để thực hiện việc này, chỉ cần di chuyển con trỏ đến tiêu đề hoặc URL được hiển thị và xem tùy chọn nào xuất hiện trong thanh địa chỉ phía dưới bên trái của cửa sổ trình duyệt.

Nhưng theo tôi, phương pháp xác minh đáng tin cậy nhất là nhận được phản hồi từ máy chủ. Trong trường hợp này, bạn sẽ nhận được mã trạng thái HTTP, qua đó bạn có thể đánh giá tính chính xác chuyển tiếp được thiết lập hoặc cô ấy sự vắng mặt hoàn toàn. Hãy sử dụng dịch vụ Yandex đặc biệt cho việc này bằng cách nhập URL đã kiểm tra và nhấp vào nút “Kiểm tra”:


Kết quả là, chúng tôi phát hiện ra rằng đối với một URL kết thúc bằng index.php, robot Yandex chính đã nhận được phản hồi “301 Đã di chuyển vĩnh viễn”, đây là điều chúng tôi cần chứng minh. Theo cách tương tự, bạn có thể kiểm tra chuyển hướng vĩnh viễn cho bất kỳ nhóm trang nào trên trang web của mình. Nhân tiện, và tìm kiếm của Google cũng có thể được sử dụng (điều này cũng được đề cập trong bài viết về tên miền có và không có WWW).

Cách thực hiện chuyển hướng 301 qua htaccess

Vì vậy, dựa trên thông tin được cung cấp trong hướng dẫn này, bạn đã quyết định rằng cần phải chuyển hướng vĩnh viễn để giải quyết một vấn đề cụ thể. Với khả năng cao, chúng tôi có thể nói rằng trang web của bạn được đặt trên máy chủ được quản lý bởi phần mềm Apache (để đề phòng, hãy kiểm tra với nhà cung cấp dịch vụ lưu trữ của bạn để xem trường hợp này có xảy ra không).

Trên các máy chủ Apache có một công cụ cấu hình tuyệt vời, đó là tệp httpd.conf. Nếu lệnh tương ứng được chỉ định trong đó, thì mỗi quản trị viên web sẽ có cơ hội sử dụng tệp .htaccess tuyệt vời, đây là tệp bổ sung tập tin cấu hình và giúp tối ưu hóa trang web.

Về nguyên tắc, công cụ này có chức năng tương tự như httpd.conf, chỉ là các lệnh được chỉ định trong nó chỉ áp dụng cho thư mục chứa nó. Vì vậy, nếu bạn đặt .htaccess vào thư mục gốc trang web, thì bạn có thể cài đặt nhiều nhất cài đặt khác nhau cho một tài nguyên web cụ thể, bao gồm cả việc chuyển hướng liên tục đến các trang được yêu cầu.

Có thể dễ dàng truy cập tệp này bằng cách sử dụng phần mềm thích hợp dưới dạng Filezilla tương tự. Chà, không nên thay đổi nó biên tập đơn giản, và ở dạng “vàng”, nghĩa là ở dạng , nơi có thể quay lại một số bước:


Nếu đột nhiên tệp này không có sẵn trên máy chủ nơi lưu trữ trang web của bạn, bạn có thể tự tạo nó. Điều này có thể được thực hiện trực tiếp trên máy chủ thông qua cùng một chương trình NotePad++, cũng hỗ trợ khả năng kết nối qua giao thức FTP.

Trước khi tiếp tục, tôi muốn nhắc bạn rằng trước khi edit.htaccess bạn nên làm điều đó bản sao lưu. Điều này là cần thiết để trong trường hợp hành động không thành công và mất quyền truy cập vào trang web, bạn có thể trả lại mọi thứ như cũ.

Tôi nghĩ tôi đã nói về điều này rồi, nhưng sẽ không có tội khi nhắc bạn rằng chuyển hướng vĩnh viễn là mã phản hồi của máy chủ HTTP 301, có nghĩa là chuyển hướng vĩnh viễn từ URL này sang URL khác với việc bảo toàn hầu hết tất cả các URL đó. đặc điểm trọng lượng trang.

Nhân tiện, trong thời gian tới sẽ có một ấn phẩm riêng về tất cả các mã phản hồi máy chủ phổ biến, vì vậy hãy đăng ký nhận bản tin blog để không những không bỏ lỡ bài viết này mà còn để cập nhật tất cả tin tức trên trang web nói chung .

Bây giờ hãy xem cách định cấu hình chuyển hướng 301 qua .htaccess cho từng trường hợp cụ thể. Để thực hiện việc này, chúng ta sẽ cần sử dụng các dịch vụ của mô-đun mod_rewrite, mô-đun này được thiết kế để chuyển đổi URL trên máy chủ Apache.

Mặc định thường bị vô hiệu hóa. Để kích hoạt mô-đun này, bạn cần viết “RewriteEngine on” trong tệp .htaccess:

RewriteEngine đang bật

Và để bắt đầu hoàn toàn chính xác hành động của tiện ích mở rộng này liên quan đến trang web của bạn, bạn cần viết những dòng sau:

Tùy chọn +FollowSymLinks RewriteEngine trên RewriteBase /

Dòng đầu tiên cho phép bạn xử lý các tệp nằm ở vị trí vật lý bên ngoài thư mục đối tượng nhưng có các phím tắt, thường tương tự như các phím tắt trong Windows.

Cái thứ hai, như tôi đã nói, bao gồm chính mô-đun mod_rewrite. Chà, cái thứ ba (RewriteBase / ) cho phép bạn cắt bớt đường dẫn đầy đủ từ thư mục gốc của máy chủ đến thư mục gốc của trang web để các lệnh tiếp theo được áp dụng cụ thể cho các URL của trang web. Nếu điều này không được thực hiện, vấn đề có thể phát sinh.

Một dấu gạch chéo đơn giản "/" ở đây có nghĩa là đường dẫn tương đốitrang chủ(hoặc vào thư mục gốc) và được sử dụng khi tạo các tệp . Nếu bạn muốn viết nhiều chỉ thị cho chuyển hướng thứ 301 cùng một lúc, bạn không cần phải lặp lại các dòng trên trước mỗi quy tắc.

Bây giờ chúng ta hãy bắt đầu luyện tập và bắt đầu với cách dễ nhất. Nếu vì lý do nào đó bạn cần thay đổi có chọn lọc URL các trang riêng lẻ, sau đó chúng tôi chỉ ra một chuyển hướng đơn giản đến địa chỉ mới :

Chuyển hướng 301 /page-name1/ http://site.ru/page-name2/

Trong trường hợp này, đường dẫn tương đối (/page1-name1/) được sử dụng để thể hiện URL trang cũ và đường dẫn tuyệt đối (bắt đầu bằng “http://”) được sử dụng để thể hiện URL mới, vì từng trang chuyển hướng -page cũng có thể được thực hiện đến một trang web khác. Ở đây bạn nên chú ý đến thực tế là có một khoảng trống giữa hai địa chỉ.

Nếu các trang được hiển thị theo danh mục thì khi bạn di chuyển bất kỳ trang nào sang danh mục khác, địa chỉ sẽ tự nhiên thay đổi. Ví dụ sau đây cho thấy một tình huống chung khi không chỉ phần URL được liên kết với danh mục thay đổi mà cả phần kết thúc, tương ứng với tên của chính trang đó:

Chuyển hướng 301 /category1/page-name1/ http://sait.ru/category2/page-name2/

Ví dụ: nếu bạn cần thực hiện chuyển hướng vĩnh viễn cho tất cả các trang của tài nguyên cùng một lúc, khi thay đổi phần cuối của địa chỉ có phần mở rộng .php thành phần cuối bằng s.html, thì lệnh RedirectMatch đã được sử dụng, cho phép bạn để sử dụng biểu thức chính quy:

RedirectMatch 301 (.*)\.php$ http://site.ru$1.html

Bây giờ chúng ta hãy chuyển sang nhiều hơn nữa tùy chọn phức tạp Chuyển hướng 301 từ trang này sang trang khác, điều này sẽ giúp loại bỏ nhiều trang trùng lặp. Hãy xem xét các chuyển hướng được sử dụng phổ biến nhất liên quan đến các trường hợp được mô tả ở trên trong bài viết này.

Cách thiết lập chuyển hướng vĩnh viễn cho các tên miền có và không có WWW, I. Nhưng tôi vẫn sẽ nhắc lại thông tin này cho đầy đủ. Vì vậy, để thực hiện chuyển hướng vĩnh viễn từ URL chứa WWW trong địa chỉ sang URL không có tiền tố này, bạn cần thêm quy tắc sau vào tệp .htaccess:

RewriteCond %(HTTP_HOST) ^www\.(.*) RewriteRule ^(.*)$ http://%1/$1

Và ngược lại, nếu bạn muốn để lại phần mở rộng thô sơ dưới dạng ba chữ W trong URL của trang, bạn cần sắp xếp chuyển hướng từ các địa chỉ không có WWW sang URL có WWW bằng lệnh:

RewriteCond %(HTTP_HOST) ^(.*)$ RewriteCond %(HTTP_HOST) !^www\. Quy tắc viết lại ^(.*)$ http://www.%1/$1

RewriteCond xác định điều kiện theo đó RewriteRule sẽ được thực thi (nghĩa là chính chuyển hướng). Nhân tiện, phân tích chi tiết dụng các lệnh mod_rewrite chính, bạn có thể tự làm quen với nó nếu muốn.

Các tùy chọn để chuyển hướng từ WWW sang không phải WWW và ngược lại được trình bày ở trên là phổ biến và về nguyên tắc, chúng sẽ hoạt động. Tuy nhiên, các chỉ thị gắn với một miền cụ thể vẫn sẽ đáng tin cậy hơn. Khi đó, quy tắc chuyển hướng vĩnh viễn từ WWW sang không có tiền tố này sẽ như sau:

RewriteCond %(HTTP_HOST) ^www\.site\.ru$ RewriteRule ^(.*)$ http://site.ru/$1

Và chuyển hướng ngược lại (từ không có WWW đến có WWW) giống như thế này:

RewriteCond %(HTTP_HOST) ^site\.ru$ RewriteRule ^(.*)$ http://www.site.ru/$1

Chính xác thì phương pháp thứ hai là gì? tốt hơn lần đầu tiên? Thực tế là nó không chỉ kiểm tra sự vắng mặt hay hiện diện của ba chữ W trong địa chỉ mà còn kiểm tra chính miền để đảm bảo tuân thủ đầy đủ. Chỉ cần đừng quên chèn tên miền và vùng miền của bạn thay vì “site” và “.ru”.

Chúng ta hãy thử gắn các bản sao tạo ra các trang trùng lặp với nhau bằng index.php (các phần mở rộng có thể khác nhau, chẳng hạn như .htm hoặc .html). Vì vậy, chuyển hướng 301 từ các URL chứa index.php đến địa chỉ trang tài nguyên mà không có phần kết thúc này:

RewriteCond %(THE_REQUEST) ^.*/index.php Quy tắc viết lại ^(.*)index.php$ http://%(HTTP_HOST)/$1

Chuyển hướng vĩnh viễn từ các địa chỉ không có dấu gạch chéo sang URL có dấu gạch chéo cũng có thể được thực hiện:

RewriteCond %(REQUEST_URI) !\? RewriteCond %(REQUEST_URI) !\& RewriteCond %(REQUEST_URI) !\= RewriteCond %(REQUEST_URI) !\. RewriteCond %(REQUEST_URI) !\/$ RewriteRule ^(.*[^\/])$ /$1/

Và đây là giao diện của chuyển hướng ngược, tức là từ URL có dấu gạch chéo đến địa chỉ không có dấu gạch chéo:

RewriteCond %(REQUEST_URI) !\? RewriteCond %(REQUEST_URI) !\& RewriteCond %(REQUEST_URI) !\= RewriteCond %(REQUEST_URI) !\. RewriteCond %(REQUEST_URI) ![^\/]$ RewriteRule ^(.*)\/$ /$1

Đương nhiên, sự đa dạng của các tình huống khi sử dụng chuyển hướng vĩnh viễn không chỉ giới hạn ở các ví dụ nêu trên, còn rất nhiều tình huống khác và trong mỗi trường hợp cụ thể, cần phải đưa ra các chỉ thị chính xác để khắc phục tình hình và không làm trầm trọng thêm tình hình. Nó.

Vì chủ đề được thảo luận trong ấn phẩm khá phức tạp, đặc biệt đối với những người chưa có kinh nghiệm, nên hãy xem video về quy trình xây dựng các chỉ thị khác nhau để sử dụng chuyển hướng 301:

Để được chấp nhận quyết định đúng đắn trong trường hợp này hay trường hợp khác, tôi thực sự khuyên bạn nên đọc hướng dẫn về chủ đề này của nhà tối ưu hóa nổi tiếng trên RuNet, Alexander Alaev, nơi bạn có thể tìm thấy thông tin cực kỳ hữu ích. Sẽ rất hữu ích nếu có tài liệu chính thức từ Google và Yandex ( và ), từ đó bạn cũng sẽ nhận được thông tin còn thiếu.

Và đây là một điều khác. Có thể các quy tắc chuyển hướng vĩnh viễn được cung cấp trong bài viết sẽ không hoạt động chính xác hoặc hoàn toàn không hoạt động trong một số trường hợp cụ thể. Sau đó, đừng bỏ lỡ cơ hội liên hệ với nhà cung cấp dịch vụ lưu trữ của bạn và yêu cầu họ giải quyết vấn đề. Mỗi chủ nhà có lòng tự trọng sẽ có các chuyên gia có năng lực, những người sẽ cung cấp mọi hỗ trợ có thể. Suy cho cùng thì đó là trách nhiệm của họ.

Một lời khuyên cuối cùng. Trước khi lao vào tạo chuyển hướng mà không cần nhìn lại, hãy nhớ kiểm tra tính khả dụng của chúng, điều mà tôi đã đề cập ở một trong các phần của bài viết này. Có khả năng là bạn sẽ không cần phải thực hiện bất kỳ hành động nào. Rốt cuộc, các nhà phát triển của hầu hết các công cụ trang web phổ biến đều đang theo dõi tình hình. Vì vậy, rất có thể nhiều vấn đề của việc thực hiện đã được giải quyết ngay từ đầu.

Để kết luận, tôi cung cấp thêm một video nữa, video này không những không thua kém về chất lượng so với video đầu tiên mà còn bổ sung cho nó ở một khía cạnh nào đó:

Lỗi thứ 301 (Chuyển hướng vĩnh viễn 301) được trả về khi truy cập địa chỉ cụ thể trang có nghĩa là trang web đã được bật cơ sở vĩnh viễnđã chuyển đến một địa chỉ mới, cũng được chỉ định trong tiêu đề HTTP. Cả người dùng truy cập thông qua trình duyệt và bot tìm kiếm sẽ được chuyển hướng đến địa chỉ mới, trong khi đối với các công cụ tìm kiếm, tất cả thuộc tính của địa chỉ (trang) cũ sẽ được chuyển sang URL mới. Với chuyển hướng 301, địa chỉ cũ và địa chỉ mới sẽ được hợp nhất: các thông số như PageRank và TCI, cũng như trọng lượng trang và trọng số liên kết của địa chỉ cũ sẽ được chuyển sang URL mới.

Chuyển hướng có lỗi số 301 (được di chuyển vĩnh viễn) là cách tốt nhất duy trì thứ hạng của trang web trong công cụ tìm kiếm khi chuyển nó sang tên miền mới hoặc thay đổi hệ thống quản lý nội dung. Việc chuyển hướng có thể được thực hiện theo nhiều cách, tùy thuộc vào phần mềm được cài đặt.

Chuyển hướng 301 trong .htaccess

Tuy nhiên, khi sử dụng Apache trên máy chủ, việc chuyển hướng có thể được thực hiện đơn giản bằng cách sử dụng tệp .htaccess, tuy nhiên, đừng quên bật các mô-đun mod_alias (để hỗ trợ các chỉ thị Redirect, RedirectPermanent và RedirectMatch) và/hoặc mod_rewrite (để sử dụng viết lại) trong php .ini.

Chuyển hướng bằng cách sử dụng lệnh Redirect hoặc RedirectPermanent của mô-đun mod_alias

Điều bất lợi phương pháp này là tất cả các địa chỉ cần chuyển hướng phải được liệt kê từng địa chỉ một, riêng biệt. Bạn cũng có thể sử dụng RedirectPermanent cho các mục đích tương tự.

Chuyển hướng bằng cách sử dụng lệnh RedirectMatch

Chuyển hướng này tương tự như chuyển hướng trước, ngoại trừ việc bạn có thể chỉ định biểu hiện thông thường cho các URL cũ. Giả sử khi thay đổi công cụ từ PHP sang ASP, bạn có thể chuyển hướng các địa chỉ cũ như sau:

RedirectMatch /(.*).php$ /$1.aspx

Chuyển hướng bằng cách sử dụng lệnh RewriteRule của mô-đun mod_rewrite

Để sử dụng lệnh RewriteRule, bạn cần đảm bảo rằng mô-đun mod_rewrite được bật trong httpd.conf và tùy chọn FollowSymLinks được bật. Việc sử dụng mô-đun viết lại mang đến cho bạn nhiều cơ hội để chuyển hướng các trang đến địa chỉ mới.

Chuyển hướng tên miền từ www sang không www

Tùy chọn +Theo dõiSymLinks
Bật lại công cụ
RewriteCond %(HTTP_HOST) ^www.(.*)
Quy tắc viết lại ^(.*)$ http://%1/$1

hoặc một cú pháp thay thế dễ hiểu hơn

Tùy chọn +Theo dõiSymLinks
Bật lại công cụ
RewriteCond %(HTTP_HOST) ^www.domain.com$
Quy tắc viết lại ^(.*)$ http://domain.com/$1

Chuyển hướng yêu cầu từ không phải www sang tên miền có tiền tố www

Tùy chọn +Theo dõiSymLinks
Bật lại công cụ
RewriteCond %(HTTP_HOST) ^domain.com$
Quy tắc viết lại ^(.*)$ http://www.domain.com/$1

hoặc lựa chọn thay thế

Bật lại công cụ
RewriteCond %(HTTP_HOST) !^www.(.*)
Quy tắc viết lại ^(.*)$ http://www.%1/$1

Chuyển hướng bằng tập lệnh (gửi tiêu đề)

Yêu cầu chuyển hướng cũng có thể được thực hiện bằng cách sử dụng tập lệnh, gửi các tiêu đề cần thiết cho máy khách.

Chuyển hướng PHP

Chuyển hướng ASP


Chuyển hướng ASP .NET


khoảng trống riêng tư Page_Load(người gửi đối tượng, System.EventArgs e)
{
Response.Status = “301 Đã được di chuyển vĩnh viễn”;
Response.AddHeader(“Vị trí”, “http://www.new-url.com”);
}

Chuyển hướng ColdFusion


Chuyển hướng JSP (Java)

CGI PERL

$q = CGI mới;
print $q->redirect(“http://www.new-url.com/”);

Viên ngọc trên tay vịn

chắc chắn old_action
headers[“Trạng thái”] = “301 Đã di chuyển vĩnh viễn”
redirect_to “http://www.new-url.com/”
kết thúc

Mã phản hồi 301 (Đã di chuyển vĩnh viễn) có nghĩa là tài liệu được yêu cầu hiện có sẵn vĩnh viễn tại địa chỉ mới. Chuyển hướng 301 có thể cần thiết trong một số trường hợp: chuyển sang tên miền mới, thay đổi địa chỉ trang hoặc . Mục tiêu của những sự kiện này khá minh bạch:

  • Chuyển số liệu cũ sang trang hoặc tên miền mới.
  • Loại bỏ các liên kết bị hỏng, cả bên ngoài và bên trong.
  • Loại bỏ các trang trùng lặp.

Có một số cách để thực hiện chuyển hướng 301, nhưng tôi thích tùy chọn sử dụng tệp .htaccess nằm trong thư mục FTP gốc của trang web của bạn (nếu không có ở đó, chỉ cần tạo một tệp, nó không có phần mở rộng).

Thiết lập chuyển hướng 301 từ trang này sang trang khác

Khá thường xuyên xảy ra tình huống khi một trang của trang web bị xóa hoặc buộc phải thay đổi URL của nó. Khi truy cập vào địa chỉ cũ của nó, tất nhiên người dùng sẽ thấy trang lỗi 404 (không tìm thấy).

Nếu trang đó không quan trọng thì nó không đáng bận tâm, nhưng nếu khách truy cập trang web thường xuyên truy cập nó (và có lẽ ai đó có nó trong dấu trang của họ), nếu có các liên kết bên ngoài không nằm trong tầm kiểm soát của bạn hoặc ngược lại, các liên kết nội bộ nằm trong tầm kiểm soát của bạn nhưng với số lượng lớn đến mức bạn thực sự muốn chỉnh sửa chúng, sau đó thiết lập chuyển hướng 301 với trang cũ cho một cái mới sẽ là giải pháp lý tưởng cho bạn.

Nó cũng có thể được sử dụng để chống lại các trang trùng lặp. Nói chung, bạn cần viết một cuốn sách về chủ đề “99 cách sử dụng Redirect 301”. Đây là cú pháp của nó:

Chuyển hướng 301 /old-page.html http://new-domain.ru/new-page.html

Chà, dù sao đi nữa, kết quả sẽ giống nhau:

Chuyển hướng vĩnh viễn /old-page.html http://new-domain.ru/new-page.html

Hãy để tôi giải thích: /old-page.html là địa chỉ tương đối của trang cũ. Nó có thể được lồng vào nhau: /old-category/old-page.html hoặc như thế này: /old-category/old-page/ - không có hạn chế nào ở đây. Điều tương tự cũng áp dụng cho http://new-domain.ru/new-page.html ( trang mới), với điểm khác biệt duy nhất là đường dẫn ở đây là tuyệt đối (không nhất thiết phải là tên miền mới - nó có thể chỉ là một tên miền mới địa chỉ nội bộ trang).

Thiết lập chuyển hướng 301 khi di chuyển trang web sang tên miền mới

Tình hình cũng không kém phần rõ ràng. Cần phải chuyển sang tên miền mới trong khi vẫn duy trì hiệu suất của tên miền cũ (, PR). Trong trường hợp này, chúng tôi chỉ định thông tin sau cho .htaccess của miền cũ:

Tùy chọn +Theo dõiSymLinks
RewriteEngine đang bật

Viết lại Tắt động cơ

RewriteCond %(HTTP_HOST) ^old-domain\.ru
Quy tắc viết lại ^(.*)$ http://new-domain.ru/$1
RewriteCond %(HTTP_HOST) ^www.oldsite\.ru
Quy tắc viết lại ^(.*)$ http://old-domain.ru/$1

TRONG trong ví dụ này chúng tôi đã cài đặt chuyển hướng tất cả các trang của tên miền cũ sang các trang của tên miền mới (với điều kiện là chúng địa chỉ tương đối phù hợp). Đồng thời, chúng tôi để lại tệp robots.txt trên miền cũ mà không chuyển hướng để quá trình chuyển được hoàn thiện hơn. Chúng tôi viết trong đó:

Đại lý người dùng: *
Không cho phép:
Máy chủ: newsite.ru
Sơ đồ trang web: http://newsite.ru/sitemap.xml

Chà, chúng tôi đợi vài tháng cho đến khi việc di chuyển tên miền được chấp nhận và tất cả các đặc điểm được chuyển giao.

Dán gương website: redirect 301 từ www sang non-www và ngược lại

Có một số tùy chọn để truy cập một trang web - có www và không có www (ví dụ: trang web và www.site). Người dùng không quan tâm chính xác anh ta nhập URL như thế nào vì dù sao thì anh ta cũng sẽ kết thúc trên cùng một trang. Nếu không tình hình sẽ công cụ tìm kiếm. Họ coi www.site.ru và site.ru là hai hoàn toàn các miền khác nhau(trải dài từ sâu thẳm lịch sử mạng toàn cầu khi thực tế là như vậy).

Những trang trùng lặp này cản trở việc lập chỉ mục và quảng bá trang web nói chung, vì thứ nhất, đây là những trang trùng lặp tầm thường (xin lỗi vì sự lặp lại) và thứ hai, các liên kết đến cũng sẽ được đặt trong các giỏ khác nhau. Điều tương tự cũng áp dụng cho các bản sao của trang chính: site.ru, site.ru/index.html, site.ru/index.php, v.v. Vì lý do này, ngay cả ở giai đoạn tạo trang web, bạn nên quan tâm đến vấn đề này và chuyển hướng một trong các phiên bản của trang web (ví dụ: có www) sang phiên bản khác (ví dụ: không có www). Nếu khoảnh khắc đó bị bỏ lỡ thì không có gì phải lo lắng.

Chúng ta hãy xem từng bước quá trình dán gương bằng cách sử dụng chuyển hướng 301.

1. Xác định tên miền chính được các công cụ tìm kiếm lựa chọn để lập chỉ mục.

Gương chính có thể dễ dàng nhận biết từ kết quả kết quả tìm kiếm Yandex và . Nhập tên miền và xem địa chỉ nào được hiển thị: www.site.ru hoặc site.ru. Nếu trang web chưa được lập chỉ mục, chúng tôi sẽ chọn trang đó theo quyết định riêng của mình. Nếu các miền chính trong Google và Yandex khác nhau thì tốt hơn hết bạn nên rời khỏi Yandex.

2. Chúng tôi đăng ký chuyển hướng 301 trong .htaccess.

Tìm tệp .htaccess trong thư mục gốc của trang FTP, tải xuống và mở nó trong Notepad, sau đó thêm nó vào đó sự thay đổi cần thiết. Tùy chọn đầu tiên là chuyển hướng 301 của một tên miền không có www sang có www:

Tùy chọn +Theo dõiSymLinks
Bật lại công cụ

Viết lại Tắt động cơ

RewriteCond %(HTTP_HOST) ^site.ru$
Quy tắc viết lại (.*) http://www.site.ru/$1

Tình huống ngược lại là từ có www đến không có www:

Tùy chọn +Theo dõiSymLinks
Bật lại công cụ

Viết lại Tắt động cơ

RewriteCond %(HTTP_HOST) ^www.site.ru$
Quy tắc viết lại (.*) http://site.ru/$1

Sau khi chỉnh sửa xong, lưu file và upload lên thư mục gốc thư mục FTP với việc viết lại.

Tùy chọn, bạn có thể xử lý ngay các bản sao của trang chính như index.php và index.html, thêm đoạn mã sau vào bên dưới:


RewriteRule ^index\.html$ http://www.site.ru/

Quy tắc viết lại ^index\.php$ http://www.site.ru/

Chà, một lần nữa, nếu bạn có site.ru:

RewriteCond %(THE_REQUEST) ^(3,9)\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://site.ru/
RewriteCond %(THE_REQUEST) ^(3,9)\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://site.ru/

3. Thiết lập robots.txt

Bạn đã thấy một lệnh quen thuộc nào giữ nguyên robots.txt chưa? Đúng vậy, hãy thay đổi robots.txt:

Máy chủ: main-mirror.ru

4. Chúng tôi kiểm tra hoạt động của trang web.

Chúng tôi nhập địa chỉ mà chúng tôi đã tạo chuyển hướng, ví dụ: www.site.ru hoặc site.ru/index.html và nếu khi bạn truy cập vào địa chỉ đó, quá trình chuyển đổi sang site.ru xảy ra thì mọi thứ đã được định cấu hình chính xác.

5. Thiết lập Yandex và quản trị trang web của Google.

Ngoài ra, chúng tôi áp dụng các cài đặt thích hợp trong tệp . Trong trường hợp của Yandex:

Và đối với Google:

Đó dường như là tất cả. Chúc may mắn và nếu bạn có bất kỳ câu hỏi nào, hãy viết bình luận.

Chuyển hướng 301 được sử dụng chủ yếu khi một trang hoặc một nhóm trang đã thay đổi địa chỉ của nó. Điều này xảy ra trong trường hợp cấu trúc của trang web thay đổi, khi trang URL hình thành thay đổi, v.v. Nhiều chủ sở hữu trang web không nghĩ đến điều này và do đó phát sinh các trang trùng lặp, có thể dẫn đến mất vị trí hoặc chồng chéo.

Ngoài ra, chuyển hướng 301 được sử dụng để hợp nhất các bản sao (ví dụ: tên miền có www và không có www). Điều này có thể giúp cải thiện các thông số TCI và PR, vì đối với các công cụ tìm kiếm, địa chỉ trang web có “www” và không có “www” là các URL khác nhau. Nếu chủ sở hữu quyết định thay đổi địa chỉ của dự án do thay đổi hàng hóa, dịch vụ được cung cấp trước đó hoặc quyết định đăng ký một tên miền ngắn hơn và đẹp hơn thì điều rất quan trọng là khi khách truy cập truy cập vào địa chỉ của tên miền cũ, họ sẽ kết thúc trên cùng một trang như trước, nhưng chỉ trang đã có trên tên miền mới.

Chuyển hướng 301 trong .htaccess

Chuyển hướng 301 trong htaccess là cách dễ nhất và phổ biến nhất để cài đặt chuyển hướng. Một trong những ưu điểm của phương pháp này là nó được kích hoạt trên máy chủ trước khi khởi chạy kịch bản khác nhau tài nguyên và không tạo thêm tải. Dưới đây là một số ví dụ phổ biến nhất (thay thế "trang web" bằng địa chỉ trang web của bạn):

Chuyển hướng 301 trong .htaccess cho miền có www. đến một tên miền không có www.

Tùy chọn +Theo dõiSymLinks
Bật lại công cụ
RewriteCond %(HTTP_HOST) ^www\.raskruty\.ru$
Quy tắc viết lại ^(.*)$ http://site/$1

Chuyển hướng ngược từ một tên miền không có www. đến một tên miền từ www.

Tùy chọn +Theo dõiSymLinks
Bật lại công cụ
RewriteCond %(HTTP_HOST) ^raskruty\.ru$
Quy tắc viết lại ^(.*)$ http://www.site/$1

Chuyển hướng địa chỉ 301 từ /index.php về thư mục gốc của trang /

RewriteCond %(THE_REQUEST) ^(3,9)\ /index\.php\ HTTP/
Quy tắc viết lại ^index\.php$ http://www.site/

Một ví dụ nữa:

RewriteCond %(THE_REQUEST) ^(GET|HEAD)\ /index\.php
RewriteRule.*/

Điều tương tự cũng có thể được thực hiện với /index.html, chỉ cần thay thế bằng ví dụ về php sang html.

Chuyển hướng đến nginx:

Chuyển hướng 301 trong nginx cho tên miền có www. đến một tên miền không có www.

Máy chủ (
tên máy chủ www.site;
viết lại ^ http://site$request_uri? Vĩnh viễn;
}
máy chủ (
trang web server_name;
.... cấu hình chính....
}

Một ví dụ khác (không mong muốn):

Nếu ($host = "www.site") (
viết lại ^/(.*)$ http://site/$1 vĩnh viễn;
}

Chuyển hướng PHP:

Chuyển hướng 301 thường được sử dụng làm phản hồi của máy chủ, thay thế lỗi 404 truyền thống bằng hành động này - Không tìm thấy. Nói một cách đơn giản, khi khách truy cập nhấp vào một liên kết không chính xác hoặc trang đã xóa, sẽ không gặp thông báo như: “Xin lỗi, nhưng trang này đã bị xóa” mà sẽ được chuyển hướng đến một trang khác trang hiện tại. Mặc dù điểm này đang gây tranh cãi giữa các chuyên gia và do đó có một số giải pháp khả thi.

Thứ nhất, có hai loại lỗi 404: thứ nhất là truyền thống (cổ điển), khi trang thực sự bị thiếu và thứ hai là khi xảy ra lỗi như vậy do “đường cong” liện kết ngoại. Vì vậy, trong trường hợp đầu tiên, tốt hơn hết bạn nên để nguyên mọi thứ, tức là “lỗi 404”. Nhưng trong trường hợp thứ hai, tốt hơn hết bạn nên quan tâm đến việc chuyển hướng đến đúng URL nếu có thể khôi phục nó từ một liên kết bị hỏng hoặc chuyển hướng người dùng đến trang chính.

Trong trường hợp khi một dự án lớn hoặc cấu trúc trang web phức tạp cần được làm lại, chủ sở hữu thường phải đối mặt với nhiều chuyển hướng hoặc chuỗi dài. Điều này có nghĩa là việc chuyển hướng được thực hiện không phải trong một bước mà theo nhiều bước - đây là một tình huống tiêu cực và phải tránh. Nếu bot tìm kiếm đi theo một liên kết như vậy và nhận được một số chuyển hướng liên tiếp, nó sẽ bắt đầu nghĩ rằng chúng muốn lừa dối nó và sẽ dừng hành động của nó, đồng thời thường ngừng lập chỉ mục các liên kết đó.

Nếu có thể, bạn nên cố gắng ngăn chặn chuyển hướng trong tài nguyên. Ví dụ: nếu không thể sửa các liên kết dẫn từ các tài nguyên khác đến trang web và cần phải chuyển hướng thì các liên kết nội bộ bị hỏng phải được sửa. Mặc dù điều này có thể không ảnh hưởng đến thứ hạng hoặc lập chỉ mục nhưng tốt hơn hết bạn nên đảm bảo an toàn và tránh những vấn đề gây tranh cãi như vậy.

Khi tạo quy tắc chuyển hướng trong .htaccess, bạn cần loại trừ địa chỉ thực các tập tin và thư mục trên máy chủ và theo dõi việc lựa chọn.