Trong vận hành website, các tham số động như điều kiện lọc sản phẩm, thẻ theo dõi tuy thuận tiện cho việc triển khai chức năng nhưng có thể gây ra vấn đề trùng lặp lập chỉ mục bởi các công cụ tìm kiếm.
Ví dụ, cùng một trang nội dung nhưng do khác tham số mà tạo ra nhiều URL khác nhau (như example.com/page?id=1 và example.com/page?source=2), khiến công cụ tìm kiếm nhầm tưởng đây là các trang riêng biệt.

Table of Contens
ToggleTác động của tham số động đến việc lập chỉ mục website
Chẳng hạn như truyền thông tin hành vi người dùng qua URL (như ?utm_source=quảng_cáo) hoặc điều kiện lọc sản phẩm (như ?color=red&size=M).
Tuy nhiên, những tham số này tạo ra rất nhiều URL tương tự (như example.com/product và example.com/product?color=red), dẫn đến việc công cụ tìm kiếm nhận nhầm từng URL là trang riêng biệt, gây lập chỉ mục trùng lặp.
Cách tham số động tạo ra URL trùng lặp
Tham số động thường được truyền qua URL để thể hiện hành vi người dùng, trạng thái trang hoặc thông tin theo dõi. Dù tăng tính linh hoạt, nhưng khi các tổ hợp tham số bùng nổ, sẽ tạo ra rất nhiều trang trùng lặp. Dưới đây là các tình huống và loại tham số điển hình:
Loại tham số và vai trò
- Tham số chức năng: Ảnh hưởng trực tiếp tới nội dung trang, như lọc sản phẩm trên sàn thương mại điện tử (
?category=shoes&color=blue), tham số phân trang (?page=2). - Tham số theo dõi: Dùng để đánh dấu nguồn lưu lượng hoặc hành vi người dùng, ví dụ mã quảng cáo (
?utm_source=google), ID phiên (?session_id=abc123). - Tham số thừa: Tham số không có tác dụng thực tế, như dấu thời gian (
?t=20231001), nhận dạng cache (?cache=no).
Logic tạo URL trùng lặp
- Trang cơ bản:
example.com/product - Trang có tham số lọc:
example.com/product?color=red - Trang có mã quảng cáo:
example.com/product?utm_campaign=summer_sale
Dù nội dung chính giống nhau, công cụ tìm kiếm vẫn xem các URL này là trang riêng biệt, dẫn đến lập chỉ mục trùng lặp.
Tác hại của việc lập chỉ mục trùng lặp với SEO
① Phân tán sức mạnh và giảm thứ hạng
- Vấn đề chính: Công cụ tìm kiếm phân bổ sức mạnh trang (như backlink, dữ liệu nhấp chuột) cho nhiều URL thay vì tập trung vào trang chính.
- Ví dụ: Một trang sản phẩm thương mại điện tử tạo ra 10 URL từ tham số lọc, mỗi URL chỉ nhận được 10% sức mạnh của trang chính, khiến thứ hạng giảm từ trang đầu xuống trang thứ 3.
② Lãng phí hạn mức thu thập dữ liệu
- Cơ chế: Công cụ tìm kiếm phân bổ hạn mức thu thập dữ liệu hàng ngày cho mỗi website (ví dụ: website nhỏ 500 trang/ngày). Nếu URL động chiếm 80% hạn mức, trang quan trọng sẽ không được thu thập kịp thời.
- Biểu hiện: Số lượng URL “đã phát hiện nhưng chưa được lập chỉ mục” tăng mạnh trong công cụ quản trị trang, trong khi tần suất thu thập trang chính giảm.
③ Rủi ro nội dung trùng lặp
- Bị đánh giá nội dung thấp: Công cụ tìm kiếm có thể coi các trang trùng lặp là “nội dung kém chất lượng”, giảm độ tin cậy tổng thể của website, kéo theo thứ hạng các trang khác giảm.
- Ví dụ bị phạt: Một trang tin tức tạo ra hàng ngàn trang tương tự từ tham số dấu thời gian, bị Google giảm điểm thuật toán, khiến lưu lượng giảm 40%.
Cách xác định website có vấn đề tham số động hay không
① Sử dụng công cụ quản trị trang của công cụ tìm kiếm
- Google Search Console:
- Kiểm tra “Báo cáo phạm vi”, chú ý đến các URL trong mục “Nội dung trùng lặp” hoặc “Đã gửi nhưng chưa được lập chỉ mục” xem có chứa tham số động không.
- Sử dụng “Công cụ kiểm tra URL” nhập trang có tham số để xem “URL chuẩn” mà Google nhận diện có đúng như mong đợi không.
- Nền tảng tài nguyên Baidu:
- Dùng báo cáo “Phát hiện liên kết chết” hoặc “Lỗi thu thập dữ liệu” để lọc ra các URL có tham số không hợp lệ.
② Phân tích log và giám sát crawler
- Phân tích file log máy chủ, thống kê các URL có tham số được các crawler của công cụ tìm kiếm (như Googlebot, Baiduspider) truy cập nhiều.
- Công cụ đề xuất: Screaming Frog (thu thập toàn bộ URL trên site), ELK Stack (phân tích log).
③ So sánh dữ liệu lập chỉ mục
- Nhập
site:example.com inurl:?(thay bằng tên miền của bạn) trên công cụ tìm kiếm để xem số lượng trang có tham số được lập chỉ mục. - Nếu kết quả tìm kiếm có nhiều trang có nội dung rất giống nhau, có thể xác nhận vấn đề.
Giải pháp tạm thời và chiến lược dài hạn
Xử lý khẩn cấp (chặn thiệt hại nhanh)
- Chặn các tham số không cần thiết: Dùng
robots.txtđể cấm crawler truy cập các tham số rủi ro cao (ví dụ:Disallow: /*?*), nhưng cần cẩn thận tránh chặn nhầm trang hợp lệ. - Đánh dấu canonical tạm thời: Thêm
<link rel="canonical" href="URL chính" />vào phần đầu trang động để chỉ định trang chính.
Hướng tối ưu lâu dài
- Chuẩn hóa tham số: Hợp tác với nhóm phát triển để chuyển các tham số chức năng (như lọc, sắp xếp) thành cấu trúc URL tĩnh (ví dụ:
/product/color-red) thay vì tham số động. - Quy tắc theo dõi thống nhất: Sử dụng JavaScript hoặc Tag Manager để triển khai tracking quảng cáo, tránh để lộ tham số
utm_*trong URL.
Phân tích 3 giải pháp chuẩn hóa URL
Thẻ canonical (Canonical Tag)
Nguyên lý chính
Thêm <link rel="canonical" href="URL chuẩn" /> trong phần đầu HTML để báo với công cụ tìm kiếm trang chính, tránh lập chỉ mục trùng lặp.
Các bước thực hiện
- Xác định URL chuẩn: Chọn phiên bản URL không có tham số hoặc ít tham số nhất làm trang chính (ví dụ
example.com/product). - Chèn code: Thêm thẻ canonical vào phần đầu tất cả các trang có tham số, trỏ về URL chính.
- Kiểm tra: Dùng “Công cụ kiểm tra URL” của Google Search Console để xác nhận công cụ tìm kiếm nhận diện đúng trang chuẩn.
Ưu điểm và trường hợp áp dụng
- Chi phí thấp: Không cần cấu hình máy chủ, phù hợp cho website vừa và nhỏ có nguồn lực kỹ thuật hạn chế.
- Linh hoạt: Có thể thiết lập riêng cho từng trang, ví dụ giữ lại các trang có chức năng như phân trang hoặc lọc.
- Ví dụ thực tế: Một nền tảng blog thêm thẻ canonical cho trang có tham số theo dõi quảng cáo (ví dụ:
?ref=ad), sau 3 tuần lượt truy cập URL chính tăng 25%.
Rủi ro tiềm ẩn
Phụ thuộc vào sự nhận diện của crawler: Nếu công cụ tìm kiếm không nhận diện đúng thẻ, hiệu quả sẽ giảm.
Lỗi cấu hình:
- Trỏ sai sang trang khác (ví dụ đặt canonical trang A thành trang B);
- Thẻ canonical bị trùng lặp (ví dụ cùng lúc có trong header và plugin).
Cài đặt tham số trong công cụ tìm kiếm
Nguyên lý chính
Sử dụng Google Search Console, nền tảng quản trị Baidu… để báo cho công cụ tìm kiếm cách xử lý các tham số cụ thể như “bỏ qua” hoặc “không bỏ qua”.
Quy trình cấu hình (lấy ví dụ Google)
Đăng nhập Search Console: Vào chức năng “Tham số URL”.
Định nghĩa loại tham số:
- Bỏ qua:ví dụ
utm_*(tham số quảng cáo),session_id(ID phiên), những tham số này không ảnh hưởng đến nội dung, có thể đặt để bỏ qua. - Giữ lại:ví dụ
page=2(phân trang),color=red(lọc), cần giữ lại tham số để duy trì chức năng.
Quy tắc gửi:Hệ thống sẽ lọc các yêu cầu thu thập dữ liệu dựa trên quy tắc.
Lợi ích và trường hợp áp dụng
- Quản lý hàng loạt:Phù hợp với các trang web lớn có nhiều loại tham số và cấu trúc phức tạp (ví dụ như thương mại điện tử, nền tảng tin tức).
- Kiểm soát thu thập trực tiếp:Khi quy tắc có hiệu lực, công cụ tìm kiếm sẽ không thu thập URL với các tham số vô nghĩa.
- Ví dụ:Một nền tảng thương mại điện tử thiết lập bỏ qua
sort=price(tham số sắp xếp), giảm 40% các trang trùng lặp được lập chỉ mục.
Lưu ý
- Xung đột quy tắc:Nếu có nhiều quy tắc chồng chéo (ví dụ cùng định nghĩa “bỏ qua”
refvàutm_*), cần đảm bảo tính nhất quán về logic. - Chỉ áp dụng cho các công cụ đã gửi:Baidu, Google cần cấu hình riêng biệt và không áp dụng cho các công cụ tìm kiếm khác như Bing.
- Thời gian hiệu lực:Quy tắc cần chờ công cụ tìm kiếm thu thập lại dữ liệu mới có hiệu lực (thường 1-4 tuần).
Chặn Robots.txt + chuyển hướng 301
Logic chính
- Robots.txt:Cấm công cụ tìm kiếm thu thập URL có tham số, giảm việc lập chỉ mục không hiệu quả.
- Chuyển hướng 301:Chuyển hướng vĩnh viễn URL động về URL chuẩn, truyền sức mạnh và thống nhất điểm truy cập.
Các bước thực hiện
Chặn Robots:
Thêm quy tắc trong robots.txt:Disallow: /*?* (chặn tất cả URL có dấu hỏi)
Ngoại lệ:Nếu cần giữ lại một số tham số (như phân trang), đổi thành Disallow: /*?utm_* (chặn tham số quảng cáo)
Cấu hình chuyển hướng 301:
Máy chủ Apache:Thêm vào file .htaccess:
RewriteCond %{QUERY_STRING} ^.*$
RewriteRule ^(.*)$ /$1? [R=301,L]Máy chủ Nginx:Thêm vào file cấu hình:
if ($args ~* ".+") {
rewrite ^(.*)$ $1? permanent;
}Kiểm tra và xác nhận:
- Sử dụng công cụ (ví dụ Redirect Checker) để xác nhận chuyển hướng hoạt động đúng;
- Kiểm tra báo cáo “Coverage” trong công cụ quản trị website để quan sát sự giảm số URL bị chặn.
So sánh các phương án và đề xuất lựa chọn
| Tiêu chí | Thẻ chuẩn | Công cụ tìm kiếm | 301+Robots |
|---|---|---|---|
| Độ khó triển khai | Thấp (chỉ cần chèn mã) | Trung bình (cần kinh nghiệm cấu hình quy tắc) | Cao (cần phát triển kỹ thuật) |
| Tốc độ hiệu lực | Chậm (phụ thuộc bot thu thập lại) | Trung bình (1-4 tuần) | Nhanh (hiệu lực ngay lập tức) |
| Quy mô áp dụng | Trang vừa và nhỏ | Trang vừa và lớn (cấu trúc tham số phức tạp) | Vấn đề lịch sử nghiêm trọng / có đội ngũ kỹ thuật hỗ trợ |
| Truyền trọng số | Truyền một phần (cần bot công nhận) | Không truyền (chỉ kiểm soát thu thập) | Truyền đầy đủ (chuyển hướng 301) |
| Chi phí bảo trì | Thấp | Trung bình (cần cập nhật quy tắc định kỳ) | Cao (cần theo dõi ổn định chuyển hướng) |
Đề xuất lựa chọn theo từng trường hợp
Ví dụ, trang nhỏ có kỹ năng kỹ thuật thấp nếu áp dụng 301 chuyển hướng dễ gây lỗi toàn trang; Nếu các trang thương mại điện tử lớn chỉ dựa vào thẻ canonical, có thể dẫn đến việc quy tắc không còn hiệu quả do quá nhiều tham số.
Nguyên tắc chính khi lựa chọn phương án là: cân nhắc tổng thể giữa quy mô trang web, nguồn lực kỹ thuật và loại tham số.
Trang web vừa và nhỏ
Vấn đề cần giải quyết
- Nguồn lực kỹ thuật hạn chế, không thể đảm nhận cấu hình máy chủ phức tạp.
- Số lượng tham số ít, nhưng có các tham số không cần thiết như theo dõi quảng cáo (ví dụ
utm_*) hoặc ID phiên làm việc.
Phương án đề xuất
- Phương án chính: sử dụng thẻ canonical làm chủ đạo + công cụ tìm kiếm bỏ qua các tham số phụ.
- Biện pháp hỗ trợ: chuyển hướng 301 cho một số tham số có tần suất xuất hiện cao (ví dụ
?ref=ad).
Các bước thực hiện
Cấu hình thẻ canonical:
- Dùng plugin CMS (như Yoast SEO cho WordPress) để thêm thẻ trỏ tới URL gốc không có tham số hàng loạt.
- Dùng công cụ kiểm tra URL của Google Search Console để xác nhận trạng thái nhận diện canonical.
Bỏ qua tham số không cần thiết:
- Trong phần “Tham số URL” của Google Search Console, thiết lập
utm_*vàsession_idở chế độ “bỏ qua”. - Trong Baidu Webmaster Tools, gửi “liên kết hỏng” hoặc dùng chức năng “lọc tham số”.
Chuyển hướng 301 một phần:
Thiết lập chuyển hướng 301 cho các URL có tham số và lượng truy cập cao (như trang khuyến mãi) về trang chính.
Lưu ý quan trọng
- Cấm: Không đặt nhiều thẻ canonical trên cùng một trang (ví dụ trùng giữa plugin và mã thủ công).
- Cấm: Không để canonical của trang động trỏ tới trang có nội dung không khớp.
Trang thương mại điện tử/ nền tảng lớn
Vấn đề cần giải quyết
- Tham số đa dạng và phức tạp, gồm cả chức năng (lọc, sắp xếp) và theo dõi (quảng cáo, thử nghiệm A/B).
- Số lượng trang lớn, cần quản lý quy tắc tập trung để giảm chi phí duy trì thủ công.
Phương án đề xuất
- Phương án chính: ưu tiên quy tắc tham số trong công cụ tìm kiếm + dùng canonical làm biện pháp bổ trợ.
- Tối ưu nâng cao: chuyển đổi dần tham số chức năng sang URL tĩnh (ví dụ
/shoes/color-red).
Các bước thực hiện
Phân loại tham số và cấu hình quy tắc:
- Tham số theo dõi (ví dụ
utm_*,campaign_id): thiết lập “bỏ qua” trong Google/Baidu. - Tham số chức năng (ví dụ
color=red,sort=price): vẫn thu thập nhưng thêm thẻ canonical trỏ tới trang không có tham số hoặc trang danh mục.
Chuyển đổi sang URL tĩnh:
- Hợp tác với nhóm phát triển để biến điều kiện lọc thành cấu trúc thư mục (ví dụ
example.com/shoes/color-red) thay vì dùng?color=red. - Dùng JavaScript xử lý tham số phụ (ví dụ sắp xếp, phân trang) để không hiển thị trên URL.
Giám sát và cải tiến liên tục:
Kiểm tra báo cáo “Trang trùng lặp” trên công cụ quản trị web hàng tuần, điều chỉnh thứ tự ưu tiên quy tắc tham số.
Ví dụ thực tế
Một trang thương mại điện tử thời trang đã chuyển tham số ?color=red&size=M thành URL tĩnh /dress/red-medium. Sau khi tập trung trọng số trang chính, thứ hạng từ khóa chính tăng 50%.
Trang có vấn đề di sản kỹ thuật
Vấn đề cần giải quyết
- Không xử lý tham số động trong thời gian dài, gây ra nhiều trang trùng lặp được lập chỉ mục, làm giảm lưu lượng truy cập liên tục.
- Nhóm kỹ thuật có đủ nguồn lực, có thể thực hiện điều chỉnh phức tạp.
Phương án đề xuất
- Xử lý khẩn cấp: Dùng Robots chặn các tham số nguy hiểm + chuyển hướng 301 toàn trang.
- Chiến lược dài hạn: Tĩnh hóa tham số + định kỳ dọn dẹp URL không hiệu quả.
Các bước triển khai
Chặn khẩn cấp bằng Robots.txt:
Chặn tất cả tham số không cần thiết: Disallow: /*?* (Lưu ý loại trừ các tham số cần thiết như phân trang).
Gửi file Robots cập nhật lên Google Search Console để tăng tốc hiệu lực.
Chuyển hướng 301 toàn trang:
Ví dụ rule máy chủ Apache (chuyển hướng và loại bỏ mọi tham số):
RewriteCond %{QUERY_STRING} .
RewriteRule ^(.*)$ /$1? [R=301,L]Chuyển hướng giữ lại tham số cần thiết: ví dụ ?page=2 chuyển thành /page/2/.
Dọn dẹp và cập nhật link chết:
Dùng Screaming Frog quét toàn trang, lọc ra URL lỗi 404 hoặc 500 có tham số.
Gửi yêu cầu “Xóa link chết” trong công cụ quản trị website để tăng tốc cập nhật chỉ mục công cụ tìm kiếm.
Giám sát giai đoạn chuyển đổi
- Cảnh báo rủi ro: Trong vòng 1 tuần sau chuyển hướng, có thể xảy ra biến động lưu lượng (ví dụ một số từ khóa dài tụt hạng tạm thời).
- So sánh dữ liệu: So sánh “lưu lượng tìm kiếm tự nhiên” và “số lượng trang được lập chỉ mục” trước và sau chuyển hướng, nếu sau 2 tuần không cải thiện, cần kiểm tra lại rule chuyển hướng.
Ví dụ thực tế phương án hỗn hợp
Trường hợp 1: Dọn sạch 70% URL trùng lặp cho site nội dung
Bối cảnh: Một site tin tức có hàng chục nghìn trang trùng lặp do tham số timestamp (?t=20230101), gây phân tán lưu lượng.
Phương án:
- Đặt thẻ Canonical về trang không tham số.
- Thiết lập trong công cụ Google bỏ qua tham số
t. - Gửi yêu cầu “xóa” các URL có tham số đã được lập chỉ mục.
Kết quả: Giảm 70% trang trùng lập chỉ mục trong 3 tháng, lưu lượng trang chính tăng 35%.
Trường hợp 2: Nâng cấp tham số tĩnh cho site thương mại điện tử
Bối cảnh: Một site 3C dùng tham số ?brand=xx&price=1000-2000 gây phân tán điểm SEO.
Phương án:
- Giai đoạn 1: 301 chuyển hướng toàn bộ URL có tham số về trang danh mục chính.
- Giai đoạn 2: Phát triển cấu trúc URL tĩnh (
/laptops/brand-xx/price-1000-2000). - Giai đoạn 3: Gửi URL mới lên Baidu/Google, cập nhật Sitemap đồng bộ.
Kết quả: Sau 6 tháng, lưu lượng danh mục chính tăng gấp đôi, tỉ lệ thoát giảm 20%.
3 trường hợp tuyệt đối tránh
| Trường hợp | Vùng cấm | Hậu quả |
|---|---|---|
| Website vừa và nhỏ | Dùng đồng thời Canonical và Meta Robots Noindex | Trang có thể bị xóa hoàn toàn khỏi chỉ mục |
| Site thương mại điện tử / nền tảng lớn | Bỏ qua toàn bộ tham số một cách cứng nhắc | Chức năng lọc mất tác dụng, trải nghiệm người dùng kém |
| Site có vấn đề lịch sử | Chặn bằng Robots mà không có chuyển hướng 301 | Tạo nhiều link chết, không thu hồi được SEO link juice |
Giải pháp
- Website vừa và nhỏ: Chọn 1 trong 2 là Canonical hoặc Meta Robots, ưu tiên Canonical.
- Site thương mại điện tử: Phân biệt tham số chức năng và tham số theo dõi, chỉ bỏ qua tham số theo dõi.
- Site có vấn đề lịch sử: Luôn kết hợp chặn Robots và 301 chuyển hướng, URL đích phải truy cập được.
Khi công cụ tìm kiếm hiểu rõ website của bạn, người dùng sẽ dễ dàng tìm thấy bạn hơn.




