Xác định xem các URL có thực sự trùng lặp không
URL canonical là địa chỉ đại diện cho các trang trùng lặp hoặc gần trùng lặp. Quan hệ liên kết canonical phù hợp khi trang đích chứa nội dung trùng lặp hoặc nội dung là superset (tập chứa) của trang tham chiếu. Nó không phải là cách để che giấu các sản phẩm khác nhau, bộ lọc hữu ích, bài viết có giá trị, hoặc các vùng ngôn ngữ (locales).
Hãy đặt câu hỏi liệu một khách truy cập có mất nội dung quan trọng, mất quyền lựa chọn, hoặc không thể hoàn thành nhiệm vụ nếu URL này được đại diện bởi URL ứng viên hay không. Nếu có, giữ nó là khác biệt và cải thiện nội dung hoặc bản địa hoá (localization). Nếu không, chọn một URL ổn định và ghi lại quy tắc về giao thức, host, đường dẫn, slash cuối, và tham số.
Thêm thẻ canonical tham chiếu tới chính nó cho mỗi trang HTML ưu tiên có thể lập chỉ mục, ngay cả khi hiện tại không có bản trùng lặp rõ ràng.
Chỉ trỏ một bản sao cần thiết, như route có tham số phân tích (analytics-parameter), tới URL ưu tiên nếu cả hai trang trả về cùng nội dung chính.
Dùng chuyển hướng khi URL cũ nên biến mất
Dùng chuyển hướng máy chủ vĩnh viễn khi một đường dẫn cũ, host đã ngừng sử dụng, hoặc phiên bản HTTP không còn nên là điểm đến cho người truy cập hoặc crawler. Google coi chuyển hướng là tín hiệu canonical hóa mạnh và khuyến nghị dùng chúng khi loại bỏ một bản sao.
Dùng rel=canonical khi cả hai URL phải phản hồi nội dung nhưng một trong số chúng nên đại diện cho nhóm trong tìm kiếm. Thẻ không thay đổi địa chỉ của người truy cập hay xóa route khác. Trang đích (target) nên trả về thành công và không được chuyển hướng hoặc canonicalize sang nơi khác.
Gửi một URL HTTP cũ trực tiếp tới URL HTTPS cuối cùng và dùng URL HTTPS đó ở mọi nơi khác.
robots.txt, xóa URL (URL removals), và noindex không bộc lộ bản sao ưu tiên. Noindex thay vào đó chặn trang khỏi tìm kiếm.
Xuất bản một chú thích rõ ràng duy nhất
Đối với HTML, đặt một thẻ rel=canonical tuyệt đối trong phần head. Kiểm tra mã nguồn được trình duyệt/khai thác (delivered source), không chỉ thiết lập trong CMS: theme, plugin, quy tắc edge, hoặc JavaScript có thể thay thế giá trị. Google khuyên nên cung cấp nó trong mã nguồn HTML và đảm bảo JavaScript không thay đổi nó.
Đối với tài liệu không phải HTML như PDF, dùng header phản hồi HTTP Link canonical khi phù hợp. Tránh giá trị mâu thuẫn giữa HTML và header. Trang đích phải có thể truy cập, không trả về mã 4xx, và không được là một URL chuyển hướng hoặc chuỗi chuyển hướng.
Xuất bản một mục tiêu canonical cho mỗi tài nguyên; nhiều mục tiêu sẽ làm mơ hồ sự ưu tiên.
Khai thác (fetch) mẫu trang và header sau khi thay đổi template, CDN, CMS, hoặc routing và xác nhận mục tiêu cuối cùng.
Làm cho các tín hiệu hỗ trợ đồng nhất
Liên kết nội bộ tới URL ưu tiên trong điều hướng, breadcrumbs, liên kết trong nội dung và các feed sinh ra. Chỉ đưa vào sitemap những URL bạn muốn hiển thị trong tìm kiếm. Việc đưa vào sitemap là tín hiệu yếu hơn, nhưng nó củng cố lựa chọn khi nhất quán với chuyển hướng và chú thích.
Sinh ra sitemap với các URL đầy đủ (fully qualified) dùng cùng host, giao thức và kiểu slash như canonical. Loại bỏ các bản sao bị chuyển hướng và có tham số. Kiểm tra sitemap tự động sinh sau khi thay đổi permalink, domain, ngôn ngữ, hoặc hệ thống thương mại điện tử.
Thay thế các liên kết tới URL có theo dõi, legacy, hoặc host thay thế bằng canonical đã chọn.
Giữ chuyển hướng HTTPS, mục tiêu canonical, sitemap và liên kết nhất quán; lỗi chứng chỉ hoặc trả về HTTPS-to-HTTP gây ra tín hiệu mâu thuẫn.
Xử lý tham số, phân trang, và ngôn ngữ theo mục đích
Tham số không tự động là trùng lặp. Tham số phân tích (analytics) có thể không thay đổi nội dung, trong khi bộ lọc và sắp xếp có thể thay đổi bộ kết quả. Thử nghiệm các kết hợp đại diện. Giữ lại mọi tham số cần thiết cho giỏ hàng, đăng nhập, consent, hoặc cấu hình; một canonical không được phá vỡ luồng người dùng.
Đừng canonical mọi trang phân trang về trang một: các trang sau thường chứa nội dung mà trang một không có. Đối với URL ngôn ngữ hoặc quốc gia, đặt trang cùng ngôn ngữ làm canonical khi tồn tại và dùng hreflang cho các phiên bản thay thế. Canonical không thay thế thiết kế bản địa hoá.
Ghi lại bộ lọc nào là trang đích riêng biệt và bộ lọc nào chỉ là sắp xếp/trùng lặp để thay đổi sản phẩm và kỹ thuật giữ được nhất quán.
Chỉ dùng một trang xem-tất-cả khi nó thực sự là superset hữu dụng của nội dung; kiểm tra tốc độ tải và điều hướng trước khi chọn.
Gỡ lỗi mâu thuẫn với bằng chứng đã lập chỉ mục và đang hoạt động
Trong Search Console, kiểm tra URL bị ảnh hưởng và so sánh canonical do Google chọn trong chỉ mục với giá trị do người dùng khai báo. Kiểm tra cả trang mục tiêu. Báo cáo đã lập chỉ mục phản ánh những gì Google đã xử lý lần cuối; kiểm tra trực tiếp (live test) hữu ích cho fetch hiện tại, trang đã render, header và tài nguyên, nhưng không thể dự đoán lựa chọn canonical cuối cùng.
Nếu các giá trị khác nhau, cân nhắc liệu Google có chọn đại diện tốt hơn hay không. Nếu không, lần theo chuyển hướng, chú thích trong HTML và HTTP-header, đầu ra đã render, liên kết, mục sitemap, hreflang và độ tương đồng nội dung. Sửa sự bất đồng, ghi lại thay đổi và chờ thời gian để Google đánh giá lại.
Kiểm tra template, header, routing host và thay đổi bảo mật. Một canonical hoặc chuyển hướng cross-domain không giải thích được cần phải điều tra bảo mật.
So sánh mã nguồn được giao và header với thiết lập CMS; một plugin hoặc quy tắc nền tảng có thể phát ra giá trị khác.
Thêm kiểm tra canonical vào siết chặt phát hành của SIU
Trước khi thay đổi domain, HTTPS, CDN, CMS, template, hoặc catalogue, lấy mẫu homepage, các trang nội dung và sản phẩm, một route có tham số, một locale, một URL legacy, và các tài liệu đã xuất bản. Ghi lại trạng thái, URL cuối cùng, mục tiêu canonical, việc đưa vào sitemap, và một ví dụ liên kết nội bộ.
Giữ các sửa lỗi có thể hoàn nguyên: lưu ánh xạ hiện tại, thay đổi một bộ quy tắc, xác minh các route bị ảnh hưởng, và giữ kế hoạch rollback. Điều này hỗ trợ tối ưu hoá thời gian hoạt động chủ động bằng cách bảo vệ các đường dẫn công cộng ổn định trong quá trình thay đổi; nó không cung cấp phát hiện gián đoạn hay đảm bảo lập chỉ mục.
Phân công quy tắc canonical giữa marketing và engineering và ghi nhật ký template, redirect, sitemap, hoặc thay đổi nền tảng đằng sau mỗi cập nhật.
Đính kèm một mẫu URL và header trước-sau nhỏ vào ticket phát hành để khắc phục nhanh hơn.
