ابزار تولید قوانین ریدایرکت

تبدیل نگاشت‌های CSV مبدا و مقصد به قوانین ریدایرکت 301 یا 302 برای Nginx، Apache و Vercel.

تنظیمات ریدایرکت

کد وضعیت (Status Code)

قوانین تولید شده

آماده. یک فایل CSV حاوی نگاشت مبدا و مقصد وارد کنید.

فایل CSV و قوانین تولید شده در مرورگر شما باقی می‌مانند. هیچ اطلاعاتی در BroBroGo آپلود نمی‌شود.

سوالات متداول

چگونه باید فایل CSV را فرمت‌بندی کنم؟

از یک ردیف هدر با ستون‌های source و target (یا destination) استفاده کنید. هر ردیف بعدی می‌تواند شامل یک نشانی اینترنتی کامل HTTP یا HTTPS مبدا یا یک مسیر شروع شونده با /، به همراه یک مقصد کامل یا نسبی به ریشه باشد.

آیا ریدایرکت‌های تولید شده مطابقت دقیق (Exact Match) دارند؟

بله. خروجی‌های Nginx و Apache به مسیر دقیق مبدا متصل می‌شوند و Vercel نیز همان مسیر دقیق را دریافت می‌کند. نام میزبان مبدا حذف می‌شود؛ رشته‌های کوئری مبدا، فرگمنت‌ها و الگوهای وایلدکارت (wildcard) پذیرفته نمی‌شوند زیرا این سه محیط به شکل‌های متفاوتی با آن‌ها رفتار می‌کنند.

چرا خروجی Vercel از statusCode استفاده می‌کند؟

ریدایرکت دائمی Vercel کد 308 و ریدایرکت موقت آن کد 307 تولید می‌کند. در اینجا از statusCode استفاده می‌شود تا انتخاب شما دقیقاً روی 301 یا 302 باقی بماند. استقرارهای استاندارد Vercel در مجموع اجازه ۲,۰۴۸ مسیر را می‌دهند، بنابراین این ابزار تا ۲,۰۰۰ نگاشت را می‌پذیرد.

نقش ریدایرکت‌ها در مهاجرت وب‌سایت و سئو

انتقال یک وب‌سایت به ساختار جدید، بازسازی نشانی‌های اینترنتی (URLs) یا پاک‌سازی محتوای قدیمی از جمله اقداماتی هستند که وب‌مسترها و توسعه‌دهندگان وب به طور مداوم با آن‌ها سروکار دارند. در این فرآیندها، هدایت صحیح کاربران و موتورهای جستجو از صفحات قدیمی به صفحات جدید اهمیت بالایی دارد. عدم پیاده‌سازی درست ریدایرکت‌ها می‌تواند به تجربه کاربری آسیب بزند و رتبه‌بندی سئو سایت را با افت مواجه کند.

انتخاب بین ریدایرکت دائمی و موقت یکی از تصمیمات کلیدی در مدیریت آدرس‌های وب‌سایت است:

  • ریدایرکت 301 دائمی (Permanent): این کد وضعیت به موتورهای جستجو اعلام می‌کند که آدرس قدیمی برای همیشه به آدرس جدید منتقل شده است. در این حالت، ارزش و اعتبار سئو (Link Equity) از آدرس قدیمی به آدرس جدید منتقل می‌شود.
  • ریدایرکت 302 موقت (Temporary): این کد وضعیت نشان می‌دهد که انتقال آدرس به صورت موقتی است. موتورهای جستجو آدرس قدیمی را در ایندکس خود حفظ می‌کنند و اعتبار صفحه را به آدرس جدید انتقال نمی‌دهند.

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


ساختار و فرمت‌بندی فایل CSV ورودی

برای استفاده از این ابزار، باید لیست نگاشت‌های خود را در قالب یک فایل با پسوند .csv آماده کنید. ساختار این فایل باید دقیقاً مطابق با استانداردهای زیر باشد تا فرآیند پارس کردن و تولید قوانین بدون خطا انجام شود:

  • ردیف هدر: اولین ردیف فایل باید شامل ستون‌های source و target (یا destination) باشد.
  • فرمت نشانی مبدا (Source URL): این مقدار می‌تواند یک نشانی اینترنتی کامل با پروتکل HTTP یا HTTPS باشد، یا یک مسیر نسبی که با کاراکتر / شروع می‌شود. نام میزبان (Hostname) در آدرس‌های مبدا به طور خودکار توسط ابزار حذف می‌شود.
  • فرمت نشانی مقصد (Destination URL): این مقدار می‌تواند یک نشانی اینترنتی کامل HTTP یا HTTPS یا یک مسیر نسبی نسبت به ریشه سایت باشد.
  • محدودیت حجم فایل: فایل CSV ارسالی باید حجمی کمتر از ۵ مگابایت داشته باشد.
  • تعداد نگاشت‌ها: این ابزار در هر بار پردازش حداکثر از ۲,۰۰۰ نگاشت پشتیبانی می‌کند.

قوانین نگارش و حالت‌های خاص در پردازش آدرس‌ها

این ابزار قوانین ریدایرکت را بر اساس مطابقت دقیق (Exact Match) تولید می‌کند. برای اطمینان از صحت عملکرد ریدایرکت‌ها در محیط‌های مختلف، قوانین و محدودیت‌های زیر در زمان پردازش اعمال می‌شوند:

  1. حذف نام میزبان مبدا: نام دامنه یا میزبان از آدرس‌های مبدا حذف شده و قوانین بر اساس مسیر دقیق (Path) ایجاد می‌شوند.
  2. عدم پذیرش رشته‌های کوئری و فرگمنت‌ها: آدرس‌های مبدا نباید شامل رشته کوئری (Query String مانند ?id=1) یا فرگمنت (Fragment مانند #section) باشند. در صورت وجود این موارد، ابزار خطا صادر می‌کند.
  3. عدم پشتیبانی از وایلدکارت‌ها: استفاده از کاراکترهای الگو یا وایلدکارت (Wildcard) در مسیر مبدا مجاز نیست و ابزار تنها مسیرهای دقیق را می‌پذیرد.
  4. یکتا بودن مبدا: هر مسیر مبدا در کل فایل CSV فقط باید یک‌بار تعریف شده باشد. تکرار مسیر مبدا موجب بروز خطا در پردازش می‌شود.
  5. طول نشانی اینترنتی: طول هر یک از نشانی‌های اینترنتی در فایل ورودی نباید از ۲,۰۴۸ کاراکتر تجاوز کند.

ساختار قوانین ریدایرکت در Nginx

در وب‌سرور Nginx، ریدایرکت‌های دقیق با استفاده از بلاک‌های شرطی یا دستورات تطابق دقیق نوشته می‌شوند. خروجی تولید شده برای Nginx به مسیر دقیق مبدا متصل (Anchored) می‌شود تا از ریدایرکت ناخواسته مسیرهای مشابه جلوگیری شود.

نمونه‌ای از ساختار تولید شده برای ریدایرکت 301 در Nginx:

location = /old-page {
    return 301 /new-page;
}

در این ساختار، استفاده از علامت = تضمین می‌کند که ریدایرکت فقط و فقط در صورت مطابقت کامل و دقیق با مسیر /old-page اعمال شود.


ساختار قوانین ریدایرکت در Apache

برای وب‌سرور Apache، قوانین در قالب دستورالعمل‌های ماژول mod_rewrite تولید می‌شوند. این قوانین معمولاً در فایل .htaccess قرار می‌گیرند. در این محیط نیز قوانین به گونه‌ای تنظیم می‌شوند که به ابتدا و انتهای مسیر مبدا متصل شده و مطابقت دقیق را تضمین کنند.

نمونه‌ای از ساختار تولید شده برای ریدایرکت 301 در Apache:

RewriteEngine On
RewriteRule ^old-page$ /new-page [R=301,L]

کاراکترهای ^ و $ در عبارت منظم (Regular Expression) باعث می‌شوند که قانون فقط برای مسیر دقیق /old-page اجرا شود.


ساختار قوانین ریدایرکت در Vercel

پلتفرم Vercel پیکربندی ریدایرکت‌های خود را در فایل vercel.json مدیریت می‌کند. از آنجا که سوییچ‌های پیش‌فرض permanent در Vercel کدهای وضعیت 308 (برای دائمی) و 307 (برای موقت) را تولید می‌کنند، این ابزار به طور صریح از پارامتر statusCode استفاده می‌کند تا کدهای وضعیت استاندارد 301 یا 302 شما به طور دقیق حفظ شوند.

نمونه‌ای از ساختار خروجی JSON برای Vercel:

{
  "redirects": [
    {
      "source": "/old-page",
      "destination": "/new-page",
      "statusCode": 301
    }
  ]
}

حریم خصوصی و امنیت پردازش داده‌ها

هنگام استفاده از این ابزار، فایل CSV شما و قوانین ریدایرکت تولید شده به طور کامل در مرورگر وب شما پردازش می‌شوند. هیچ‌گونه اطلاعات، فایل یا داده‌ای به سرورهای BroBroGo آپلود نمی‌شود و فرآیند تبدیل به صورت محلی در سیستم شما انجام می‌پذیرد.


سوالات متداول

چگونه باید فایل CSV را فرمت‌بندی کنم؟
از یک ردیف هدر با ستون‌های source و target (یا destination) استفاده کنید. هر ردیف بعدی می‌تواند شامل یک نشانی اینترنتی کامل HTTP یا HTTPS مبدا یا یک مسیر شروع شونده با /، به همراه یک مقصد کامل یا نسبی به ریشه باشد.

آیا ریدایرکت‌های تولید شده مطابقت دقیق (Exact Match) دارند؟
بله. خروجی‌های Nginx و Apache به مسیر دقیق مبدا متصل می‌شوند و Vercel نیز همان مسیر دقیق را دریافت می‌کند. نام میزبان مبدا حذف می‌شود؛ رشته‌های کوئری مبدا، فرگمنت‌ها و الگوهای وایلدکارت (wildcard) پذیرفته نمی‌شوند زیرا این سه محیط به شکل‌های متفاوتی با آن‌ها رفتار می‌کنند.

چرا خروجی Vercel از statusCode استفاده می‌کند؟
ریدایرکت دائمی Vercel کد 308 و ریدایرکت موقت آن کد 307 تولید می‌کند. در اینجا از statusCode استفاده می‌شود تا انتخاب شما دقیقاً روی 301 یا 302 باقی بماند. استقرارهای استاندارد Vercel در مجموع اجازه ۲,۰۴۸ مسیر را می‌دهند، بنابراین این ابزار تا ۲,۰۰۰ نگاشت را می‌پذیرد.

حداکثر حجم فایل و تعداد ردیف‌های مجاز چقدر است؟
این ابزار فایل‌های CSV با حجم کمتر از ۵ مگابایت را می‌پذیرد و می‌تواند تا حداکثر ۲,۰۰۰ نگاشت ریدایرکت را در هر بار بارگذاری پردازش کند.