آدرس صفحه‌ای را تغییر دادید؟ دامنه جدید گرفتید؟ سایت را از HTTP به HTTPS منتقل کردید؟ در همه این موارد باید از ریدایرکت ۳۰۱ استفاده کنید تا اعتبار سئوی ساخته‌شده در طول ماه‌ها و سال‌ها حفظ شود و کاربران به‌جای صفحه خطای ۴۰۴، به مقصد درست هدایت شوند.

در این راهنما از مفهوم تا پیاده‌سازی عملی توضیح می‌دهیم — با مثال‌های واقعی از htaccess، cPanel، وردپرس، و کد PHP.

ریدایرکت ۳۰۱ چیست؟

ریدایرکت ۳۰۱ یک کد وضعیت HTTP است که به مرورگر و موتورهای جستجو می‌گوید: «این آدرس برای همیشه به آدرس جدید منتقل شده است.»

وقتی مرورگر یا ربات گوگل یک درخواست برای آدرس قدیمی می‌فرستد، سرور با کد ۳۰۱ پاسخ می‌دهد و آدرس جدید را در هدر Location اعلام می‌کند. مرورگر به‌طور خودکار به آدرس جدید می‌رود. کاربر معمولاً این انتقال را حتی متوجه نمی‌شود.

از نظر سئو، گوگل ریدایرکت ۳۰۱ را می‌فهمد و اعتبار صفحه قدیمی را به صفحه جدید منتقل می‌کند. این همان چیزی است که اهمیت ۳۰۱ را از سایر ریدایرکت‌ها جدا می‌کند.

فرق ۳۰۱، ۳۰۲، ۳۰۷، و ۳۰۸

کد معنی انتقال اعتبار سئو کاربرد
301 انتقال دائمی بله تغییر دائمی آدرس، انتقال دامنه
302 انتقال موقت خیر صفحات تعمیرات، تست A/B کوتاه‌مدت
307 انتقال موقت (HTTP/1.1) خیر مثل ۳۰۲ اما متد HTTP محفوظ می‌ماند
308 انتقال دائمی (HTTP/1.1) بله مثل ۳۰۱ اما متد HTTP محفوظ می‌ماند

قانون ساده: تغییر دائمی است؟ از ۳۰۱ استفاده کنید. موقت است؟ از ۳۰۲. هرگز از ۳۰۲ برای تغییرات دائمی استفاده نکنید — اعتبار سئو منتقل نمی‌شود و رتبه‌بندی‌تان آسیب می‌بیند.

چه زمانی از ریدایرکت ۳۰۱ استفاده کنیم؟

  • تغییر دامنه: از oldsite.ir به newsite.ir منتقل شده‌اید.
  • مهاجرت به HTTPS: سایت از HTTP به HTTPS می‌رود.
  • www به non-www یا برعکس: می‌خواهید یک نسخه کانونی داشته باشید.
  • تغییر URL صفحه: از /old-article به /new-article.
  • بازسازی ساختار URL: دسته‌بندی‌ها یا slug‌ها تغییر کرده‌اند.
  • حذف صفحه: صفحه‌ای حذف شده و بازدیدکنندگان باید به صفحه مرتبط بروند.
  • ادغام صفحات: چند پست مشابه را در یک پست ادغام کرده‌اید.

تأثیر ریدایرکت ۳۰۱ بر سئو

وقتی یک صفحه ماه‌ها یا سال‌هاست رتبه گرفته، بک‌لینک دارد، و در نتایج گوگل ظاهر می‌شود — تغییر آدرس بدون ریدایرکت مثل نابود کردن همه این سرمایه است.

با ریدایرکت ۳۰۱:

  • Link Equity (اعتبار لینک‌ها) از صفحه قدیمی به جدید منتقل می‌شود.
  • گوگل ایندکس قدیمی را با آدرس جدید جایگزین می‌کند.
  • رتبه‌بندی معمولاً حفظ می‌شود — با کمی تأخیر برای پردازش توسط گوگل.
  • کاربرانی که از لینک قدیمی می‌آیند (در شبکه‌های اجتماعی، ایمیل، یا سایت‌های دیگر)، بدون خطا به مقصد درست می‌رسند.

چطور ریدایرکت ۳۰۱ اضافه کنیم؟

روش ۱: فایل .htaccess (Apache)

رایج‌ترین روش روی هاست‌های لینوکسی. فایل .htaccess را در public_html باز کنید:

ریدایرکت یک صفحه خاص:

Redirect 301 /old-page https://example.com/new-page

ریدایرکت HTTP به HTTPS:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

ریدایرکت www به non-www:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

ریدایرکت کل دامنه (مثلاً تغییر دامنه):

RewriteEngine On
RewriteCond %{HTTP_HOST} ^olddomain\.com [NC]
RewriteRule ^(.*)$ https://newdomain.com/$1 [L,R=301]

روش ۲: رابط گرافیکی cPanel

  1. وارد cPanel شوید.
  2. در بخش Domains، Redirects را باز کنید.
  3. نوع ریدایرکت را انتخاب کنید: Permanent (301) یا Temporary (302).
  4. دامنه مبدأ و مسیر قدیمی را مشخص کنید.
  5. آدرس مقصد را وارد کنید.
  6. Add را بزنید.

cPanel این ریدایرکت را به فایل .htaccess اضافه می‌کند — اگر بعداً بخواهید آن را ببینید یا ویرایش کنید، همانجا هست.

روش ۳: افزونه وردپرس

  • Redirection: رایگان، محبوب، و کامل. علاوه بر تنظیم ریدایرکت، خطاهای ۴۰۴ را هم لاگ می‌کند و پیشنهاد ریدایرکت می‌دهد. برای مدیریت تعداد زیادی ریدایرکت بهترین گزینه است.
  • Yoast SEO Premium: ابزار ریدایرکت پیشرفته با پشتیبانی از regex.
  • Rank Math: ابزار ریدایرکت در نسخه رایگان هم دارد.

روش ۴: کد PHP

اگر برنامه‌نویس هستید:

<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://example.com/new-page");
exit();
?>

نکته: exit() حیاتی است — بدون آن PHP ادامه می‌دهد حتی بعد از ارسال هدر redirect.

روش ۵: در Nginx

server {
    listen 80;
    server_name old-domain.com www.old-domain.com;
    return 301 https://new-domain.com$request_uri;
}

نکات مهم هنگام پیاده‌سازی

از ریدایرکت زنجیره‌ای پرهیز کنید

ریدایرکت زنجیره‌ای یعنی A → B → C. هر حلقه اضافه یعنی یک درخواست HTTP اضافه، کاهش سرعت بارگذاری، و از دست رفتن بخشی از Link Equity. همیشه مستقیماً از مبدأ به مقصد نهایی ریدایرکت کنید — اگر قبلاً A → B تنظیم کرده‌اید و حالا B → C می‌خواهید، A → C را هم اضافه کنید.

به صفحه مرتبط ریدایرکت کنید

ریدایرکت همه صفحات حذف‌شده به صفحه اصلی سایت، «Soft 404» نامیده می‌شود. گوگل این الگو را تشخیص می‌دهد و ممکن است ریدایرکت را نادیده بگیرد. سعی کنید هر صفحه حذف‌شده را به نزدیک‌ترین صفحه مرتبط ریدایرکت کنید.

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

در Google Search Console، بخش Coverage، ریدایرکت‌هایی که گوگل پردازش کرده نشان داده می‌شوند. اگر مشکلی در پردازش باشد، اینجا خواهید دید. پس از تغییر مهم URL، صبر کنید و چند هفته دیگر وضعیت را بررسی کنید.

اول ریدایرکت، بعد حذف لینک قدیمی

ترتیب مهم است. اول ریدایرکت را فعال کنید، سپس URL قدیمی را از سایت حذف کنید یا تغییر دهید. این از ایجاد خطای ۴۰۴ موقت جلوگیری می‌کند.

تفاوت ریدایرکت ۳۰۱ و Canonical Tag

هر دو برای مدیریت محتوای تکراری یا آدرس‌های چندگانه استفاده می‌شوند — اما تفاوت مهمی دارند:

  • ریدایرکت ۳۰۱: کاربر و مرورگر را فیزیکی به آدرس جدید منتقل می‌کند. URL در نوار آدرس تغییر می‌کند.
  • Canonical Tag: فقط به گوگل می‌گوید کدام نسخه را باید ایندکس کند. کاربر همچنان روی آدرس اصلی باقی می‌ماند.

اگر آدرس واقعاً تغییر کرده، از ریدایرکت ۳۰۱ استفاده کنید. اگر چند URL محتوای مشابه دارند و می‌خواهید یکی را به گوگل نشان دهید (مثل صفحات pagination یا پارامترهای UTM)، Canonical Tag انتخاب بهتری است.

بررسی صحت ریدایرکت پس از پیاده‌سازی

بعد از تنظیم ریدایرکت، حتماً درستی آن را تأیید کنید:

  • بررسی دستی در مرورگر: آدرس قدیمی را وارد کنید و ببینید آیا به آدرس جدید می‌رود. در نوار آدرس URL جدید باید نمایش داده شود.
  • ابزار curl: با دستور curl -I https://olddomain.com/old-page می‌توانید HTTP headers را ببینید و مطمئن شوید کد ۳۰۱ و هدر Location درست است.
  • Redirect Checker آنلاین: سایت‌هایی مثل httpstatus.io یا redirectchecker.org ریدایرکت‌های زنجیره‌ای را هم تشخیص می‌دهند و کل مسیر ریدایرکت را نشان می‌دهند.
  • Google Search Console: بعد از چند روز، بخش URL Inspection را بررسی کنید تا ببینید گوگل URL جدید را ایندکس کرده یا نه.

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

ریدایرکت ۳۰۱ چقدر اعتبار سئو منتقل می‌کند؟

گوگل اعلام کرده که ریدایرکت ۳۰۱ «اکثر» Link Equity را منتقل می‌کند. در گذشته گفته می‌شد ۱۵ درصد از دست می‌رود؛ اما اخیراً گوگل اعلام کرده این تفاوت ناچیز است. در عمل، بعد از تنظیم صحیح ۳۰۱، رتبه‌بندی معمولاً حفظ می‌شود — البته صبر داشته باشید، چون پردازش گوگل زمان می‌برد.

چقدر طول می‌کشد گوگل ریدایرکت را پردازش کند؟

برای سایت‌های بزرگ با خزش مکرر، چند روز تا یک هفته. برای سایت‌های کوچک‌تر ممکن است چند هفته طول بکشد. صبور باشید و Google Search Console را زیر نظر داشته باشید. می‌توانید از ابزار URL Inspection در Search Console درخواست بازخزش کنید — این کمک می‌کند گوگل زودتر URL جدید را بررسی کند.

آیا می‌توانم ریدایرکت ۳۰۱ را پس بگیرم؟

از نظر فنی بله — فایل .htaccess یا افزونه را ویرایش کنید و ریدایرکت را حذف کنید. اما مرورگرها و گوگل ریدایرکت ۳۰۱ را کش می‌کنند. پس از حذف، ممکن است مدتی طول بکشد تا این کش پاک شود و ترافیک به آدرس قدیمی برگردد. به همین دلیل قبل از تنظیم ریدایرکت ۳۰۱ مطمئن شوید تصمیم نهایی است.

چند ریدایرکت می‌توانم در سایت داشته باشم؟

هیچ محدودیت سختی وجود ندارد، اما تعداد زیاد ریدایرکت می‌تواند روی عملکرد تأثیر بگذارد — هر ریدایرکت یک درخواست HTTP اضافه است. مهم‌تر از تعداد، کیفیت است: ریدایرکت‌های زنجیره‌ای را حذف کنید، ریدایرکت‌های قدیمی و بلااستفاده را پاک کنید، و مطمئن شوید هر ریدایرکت مستقیماً به مقصد نهایی می‌رود.

جمع‌بندی

ریدایرکت ۳۰۱ یکی از ضروری‌ترین ابزارهای سئو و مدیریت سایت است. هر بار که URL ای تغییر می‌کند، ریدایرکت ۳۰۱ پل ارتباطی بین گذشته و آینده سایت شماست. بدون آن، اعتباری که با زحمت ساخته‌اید در یک لحظه از بین می‌رود — و کاربرانی که لینک قدیمی را در ایمیل یا شبکه‌های اجتماعی دارند، با خطای ۴۰۴ مواجه می‌شوند.

ابزارهای لازم در اختیار دارید: Redirects در cPanel، فایل .htaccess، افزونه Redirection در وردپرس، یا چند خط کد PHP. هر کدام که راحت‌تر هستید را انتخاب کنید — فقط مطمئن شوید ریدایرکت‌های زنجیره‌ای نسازید و هر صفحه را به مرتبط‌ترین مقصد هدایت کنید. بعد از هر ریدایرکت مهم، صحت آن را با curl یا ابزار آنلاین تأیید کنید.