Karena keasikan fokus mencari ide untuk menulis akhirnya saya tidak terlalu memperhatikan beberapa hal penting diblog ini salah satunya adalah sitemaps xml yang dibuat dengan plugin yoast seo ternyata ada masalah karena tidak ditemukan atau not found 404.
Saya menyadari masalah pada file sitemaps xml setelah cek broken link online untuk menemukan link yang salah tulis atau halamannya sudah tidak ditemukan.
Awalnya sedikit bingung apalagi untuk blog wordpress ini saya menggunakan VPS DigitalOcean dan khawatir ada salah konfigurasi.
Namun setelah mencari-cari akhirnya saya temukan solusi yang paling tepat dan terbukti bisa mengatasi masalah not found sitemap xml tersebut, dan berikut adalah langkah yang saya lakukan.
Cara Mengatasi XML Sitemaps Not Found 404 – Plugin Yoast SEO
Untuk mengatasi masalah ini kita harus menambahkan beberapa baris kode pada konfigurasi Nginx atau file .htaccess jika menggunakan Apache, untuk kode lengkapnya bisa kamu dapatkan dari halaman Yoast berikut ini.
Karena saya menggunakan Nginx maka langkahnya adalah :
- Log in ke ke VPS via SSH
- Kemudian edit file NGINX config, kalau saya lokasinya ada di /etc/nginx/sites-enabled/wordpress. Untuk mengedit silahkan gunakan editor favorit anda tetapi saya menggunakan nano /etc/nginx/sites-enabled/wordpress
- Setelah itu tambahkan kode berikut ini didalam blok server { }
location ~ ([^/]*)sitemap(.*)\.x(m|s)l$ { ## this redirects sitemap.xml to /sitemap_index.xml rewrite ^/sitemap\.xml$ /sitemap_index.xml permanent; ## this makes the XML sitemaps work rewrite ^/([a-z]+)?-?sitemap\.xsl$ /index.php?xsl=$1 last; rewrite ^/sitemap_index\.xml$ /index.php?sitemap=1 last; rewrite ^/([^/]+?)-sitemap([0-9]+)?\.xml$ /index.php?sitemap=$1&sitemap_n=$2 last; ## The following lines are optional for the premium extensions ## News SEO rewrite ^/news-sitemap\.xml$ /index.php?sitemap=wpseo_news last; ## Local SEO rewrite ^/locations\.kml$ /index.php?sitemap=wpseo_local_kml last; rewrite ^/geo-sitemap\.xml$ /index.php?sitemap=wpseo_local last; ## Video SEO rewrite ^/video-sitemap\.xsl$ /index.php?xsl=video last; }
- Simpan perubahan lalu restart nginx dengan perintah sudo service nginx restart
Jika kamu menggunakan Apache, caranya lebih mudah karena bisa dilakukan langsung dari dashboard WordPress dan berikut langkahnya.
- Log in ke blog wordpress kamu
- Kemudian pilih SEO – Tools lalu edit file .htaccess dengan menambahkan kode berikut
# Yoast SEO - XML Sitemap Rewrite Fix RewriteEngine On RewriteBase / RewriteRule ^sitemap_index.xml$ /index.php?sitemap=1 [L] RewriteRule ^locations.kml$ /index.php?sitemap=wpseo_local_kml [L] RewriteRule ^geo_sitemap.xml$ /index.php?sitemap=geo [L] RewriteRule ^([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 [L] RewriteRule ^([a-z]+)?-?sitemap.xsl$ /index.php?xsl=$1 [L] # END Yoast SEO - XML Sitemap Rewrite Fix
Setelah menambahkan kode diatas silahkan cek kembali halaman sitemap blog kamu apakah sudah normal kembali atau ditemukan atau tidak, jika masih not found kemungkinan masih ada masalah lainnya tetapi dari pengalaman saya, cukup dengan menambahkan kode seperti diatas error pada sitemaps xml sudah teratasi.
Mudah ternyata mengatasi yoast seo sitemaps error 404, semoga bermanfaat dan selamat mencoba.
Blok server itu letaknya diantara apa ya gan ?
itu buat yang pakai nginx mba, biasanya ada di konfigurasi di /site-enable/namasitus atau site-enable/wordpress
tapi kalau pakai apache pakai cara yg ke 2