آموزش کانفیگ و یا تنظیم سایت مپ یوست Yoast در سرورهای nginx

urlfa.com

چگونه می‌توانیم سایت مپ یوست سئو را در سرورهای nginx ریرایت (Rewrite) کنیم؟

بسیاری از Developer ها و یا توسعه دهندگان وردپرس بحثی که سرش درگیر هستن، بحث Setup کردن یا تنظیم کردن و یا کانفیگ کردن سرور nginx لینوکس هستش که نمی‌دونن چه جوری باید این کار رو انجام بدن، اصلا جای نگرانی نیست چون urlfa قبلا به این مشکل خورده بوده و من یعنی علی ریاحی خواستم بعد از چندین بار سرچی که انجام دادم بهتون چگونگی Rewrite کردن سایت مپ Yoast Seo XML رو بهتون آموزش بدم که مشکل ریدایرکت شدن صفحاتتون در سرورهای nginx حل کنیم.

لطفا توجه کنید که اگر بر روی cloudflare cdn و یا هر cdn دیگه هستید، کش cdn رو حتما و حتما از روی هاستتون خاموش و یا bypass کنید.

 

کد پایه و یا Basic Code جهت Rewrite کردن سایت مپ Yoast Seo

# Rewrites for Yoast SEO XML Sitemap
rewrite ^/sitemap_index.xml$ /index.php?sitemap=1 last;
rewrite ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 last;

کد کامل جهت ریرایت سایت مپ یوست سئو

#Yoast SEO Sitemaps
location ~ ([^/]*)sitemap(.*).x(m|s)l$ {
## this rewrites 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?yoast-sitemap-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?yoast-sitemap-xsl=video last;
}

تنظیم یوست سئو در سرور NGINX چند سایتی وردپرس و یا در ساب فولدر

در برخی مواقع ممکن هستش که سایتمون رو بخوایم توی یک ساب فولدر sub folder راه بندازیم و یا روی یک سرور چند تا سایت وردپرس، به قولی مولتی وردپرس داریم در این مواقع کافیه از کد زیر استفاده کنید که شامل:

location ~ ([^/]*)sitemap(.*).x(m|s)l$ {
## this makes the XML sitemaps work
rewrite ^.*/([a-z]+)?-?sitemap.xsl$ /index.php?yoast-sitemap-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;
# Rules for yoast sitemap with wp|wpsubdir|wpsubdomain
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?yoast-sitemap-xsl=video last;
}

امیدوارم که این پست به کارتون اومده باشه، اگر سوالی بود زیر همین پست کامنت بزارید، در خدمتم.

علی ریاحی (idewn riyahi)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *