Khắc phục lỗi 404 khi tạo sitemap trên WordPress (Yoast SEO & Rank Math)

🛠️ Khắc phục lỗi 404 khi tạo sitemap trên WordPress (Yoast SEO & Rank Math)

Bạn đang sử dụng Yoast SEO hoặc Rank Math để tạo sitemap và submit lên Google Search Console (trước là Webmaster Tools), nhưng khi truy cập vào đường dẫn như /sitemap.xml hoặc /sitemap_index.xml, lại nhận được thông báo lỗi 404 – không tìm thấy trang?

Dưới đây là cách xử lý từng nguyên nhân phổ biến:

1. Xung đột với cấu hình Permalinks (Liên kết tĩnh)

Nếu cấu trúc liên kết tĩnh trên WordPress có vấn đề, sitemap rất dễ gặp lỗi 404. Cách làm:

  1. Truy cập Dashboard → Settings → Permalinks.
  2. Nhấn Save Changes mà không cần chỉnh gì thêm.
  3. Sau đó, vào lại URL sitemap (ví dụ: /sitemap_index.xml) để kiểm tra.

Thao tác đơn giản này sẽ làm WordPress cập nhật lại .htaccess hoặc rewrite rules, từ đó sitemap được phục hồi

2. Sitemap bị ẩn do bạn đã loại trừ nội dung

Nếu chỉ bị lỗi ở các sitemap phụ như /category-sitemap.xml, /post-sitemap.xml, /post_tag-sitemap.xml, nguyên nhân nằm ở thiết lập plugin. Bạn có khả năng đã vô tình loại bỏ một số loại nội dung khỏi XML sitemap.

Cách kiểm tra và bật lại:

  • Mở menu SEO → XML Sitemaps (với Yoast) hoặc tương tự trên Rank Math.
  • Kiểm tra các mục có đang bị tắt không, nếu có hãy bật chúng lên và lưu lại cấu hình

3. Lỗi server — do Apache hoặc Nginx chưa cấu hình đúng

3.1 Nếu bạn dùng Apache:

  • Yoast SEO:Sao chép đoạn sau vào file .htaccess trong thư mục gốc WordPress (backup trước khi chỉnh):
    # Fix Yoast XML sitemap rewrite
    RewriteEngine On
    RewriteBase /
    RewriteRule ^sitemap_index.xml$ /index.php?sitemap=1 [L]
    RewriteRule ^([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 [L]
    RewriteRule ^([a-z]+)?-?sitemap.xsl$ /index.php?yoast-sitemap-xsl=$1 [L]
    
  • Rank Math:
    # Rank Math sitemap rewrite
    RewriteEngine On
    RewriteBase /
    RewriteRule ^sitemap_index.xml$ /index.php?sitemap=1 [L]
    RewriteRule ^([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 [L]
    RewriteRule ^([a-z]+)?-?sitemap.xsl$ /index.php?xsl=$1 [L]
    

3.2 Nếu bạn dùng Nginx:

Thêm vào cấu hình domain (ví dụ nginx.conf):

  • Yoast SEO setup:
    location ~ ([^/]*)sitemap(.*)\.xml$ {
      rewrite ^/sitemap.xml$ /sitemap_index.xml permanent;
      rewrite ^/sitemap_index.xml$ /index.php?sitemap=1 last;
      rewrite ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 last;
      rewrite ^/([a-z]+)?-?sitemap.xsl$ /index.php?yoast-sitemap-xsl=$1 last;
    }
    

    Nếu bạn có nhiều site dạng đa site hoặc subfolder/subdomain, mở rộng rewrite theo cấu trúc tương tự

  • Rank Math setup:
    rewrite ^/sitemap_index.xml$ /index.php?sitemap=1 last;
    rewrite ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 last;
    

Sau khi chỉnh, cần reload/nginx restart, rồi kiểm tra lại sitemap.

✅ Tổng kết tối ưu SEO

  • Thẻ tiêu đề (H1/H2) rõ ràng, chứa từ khóa chính (ví dụ: “lỗi 404 sitemap WordPress”).
  • Đoạn mở bài ngắn gọn, xác định vấn đề cụ thể.
  • Phân đoạn rõ ràng, mỗi phần xử lý từng lỗi riêng biệt.
  • Kết luận/tóm lược ngắn, hướng dẫn nhanh các bước để truy vết và giải quyết.

Kết luận

Nguyên nhânBiện pháp khắc phục
Permalinks cấu hình saiSave lại Permalinks
Sitemap phụ bị ẩnBật nội dung trong plugin
Server thiếu rule rewriteThêm code phù hợp cho Apache hoặc Nginx

Chỉ cần làm theo các bước trên, bạn sẽ dễ dàng giải quyết lỗi 404 khi tạo sitemap trên Yoast SEO hoặc Rank Math một cách hiệu quả – đồng thời vẫn giữ website thân thiện với SEO. Nếu cần mình hỗ trợ chi tiết hơn từng bước, cứ nói nhé!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *