إعادة توجيه 301 أم 302: أيهما تختار وكم قفزة يتبعها Google؟

بقلم SEOgrinder · تاريخ النشر · 8 دقيقة قراءة

الجواب المختصر: عند المفاضلة بين إعادة توجيه 301 وإعادة توجيه 302، استخدم 301 (أو توأمها 308) حين يزول العنوان القديم نهائيًا، واستخدم 302 (أو 307) حين يكون الانتقال مؤقتًا ويجب أن يبقى العنوان القديم في نتائج البحث. يعدّ Google إعادة التوجيه الدائمة إشارة قوية إلى وجوب معالجة الهدف، والمؤقتة إشارة ضعيفة. ويتبع افتراضيًا ما يصل إلى 10 قفزات، لكن الأفضل أن ترسل كل عنوان قديم إلى وجهته النهائية في خطوة واحدة.

إعادة توجيه 301 أم 302: ما الفرق؟

إعادة التوجيه رد من الخادم يقول «ليست هنا، اذهب إلى هناك»، ويذكر العنوان الجديد في الترويسة Location. ورمز الحالة يبيّن السبب. في معيار HTTP (RFC 9110) يعني الرمز 301 أن للصفحة عنوانًا دائمًا جديدًا، ويعني 302 أنها موجودة مؤقتًا في مكان آخر، فعلى العميل أن يواصل استخدام العنوان الأصلي. ويقرأ Google الفرق نفسه ويتصرف على أساسه:

الرمزالمعنىما يفعله Google
301انتقال دائميتبعه؛ إشارة قوية إلى وجوب معالجة الهدف
308إعادة توجيه دائمةمثل 301
302موجود (مؤقتًا)يتبعه؛ إشارة ضعيفة إلى وجوب معالجة الهدف
307إعادة توجيه مؤقتةمثل 302

الجدول مأخوذ من صفحة Google عن رموز حالة HTTP (آخر تحديث ‎2026-02-04‎). وما يعنيه ذلك في البحث مذكور في صفحة إعادة التوجيه (آخر تحديث ‎2026-04-14‎): ففي إعادة التوجيه الدائمة يعرض Google الهدف الجديد في النتائج، وفي المؤقتة يعرض الصفحة المصدر. وقد قرأنا صفحات Google المرتبطة هنا في 4 نوفمبر 2026.

ولماذا يوجد 307 و308 أصلًا؟ يعاملهما Google معاملة 302 و301، لكنه يشير إلى أنهما مختلفتان دلاليًا، فاختر الرمز الذي يناسب الحالة. والفرق في طريقة الطلب: بعد 301 أو 302 يجوز للعميل أن يحوّل طلب POST إلى GET، أما بعد 307 أو 308 فعليه أن يحتفظ بالطريقة نفسها (RFC 9110، القسم 15.4). وفي التصفح العادي للصفحات لن تلاحظ شيئًا؛ أما في النماذج وواجهات البرمجة التي تستقبل POST فاستخدم 308 أو 307.

أي إعادة توجيه تناسب أي حالة؟

سؤال واحد يحسم معظم الحالات. تقول صفحة Google عن إعادة التوجيه: «Use permanent redirects when you're sure that the redirect won't be reverted.» فإذا كان العنوان القديم لن يعود أبدًا فاستخدم 301. وإذا كان سيعود فاستخدم 302.

الحالةاستخدمملاحظة
أخذت صفحة عنوانًا جديدًا (معرّف جديد أو مجلد جديد)301 أو 308يظهر الهدف الجديد في البحث
دُمجت صفحتان في صفحة واحدة301 من كل عنوان قديم إلى الصفحة المدمجةيسمح بذلك دليل Google لنقل المواقع في حالة المحتوى المدمج
من http إلى https، أو من www إلى بدونها (أو العكس)301 أو 308يقول Google: اختر عنوانًا مفضلًا واحدًا وأعد توجيه البقية إليه
خدمة متوقفة لبعض الوقت ويرى الزوار صفحة توضيح302 أو 307يبقى العنوان القديم في البحث
الصفحة زالت ولا شيء يحل محلهالا إعادة توجيه: 404 أو 410الصفحة المحذوفة تُجاب بخطأ لا بإعادة توجيه
عناوين قديمة كثيرة إلى الصفحة الرئيسيةلا تفعليقول Google إنها قد تُعامل على أنها Soft 404

الصف الأخير مأخوذ من دليل Google لنقل المواقع (آخر تحديث ‎2026-08-20‎)، وتبيّن مقالتنا عن أخطاء Soft 404 كيف تجد مثل هذه الحالات. والدليل نفسه يتناول نقل موقع كامل إلى نطاق جديد، وهذا عمل أكبر مما تغطيه هذه المقالة.

وما كلفة الاختيار الخاطئ؟ إن إعادة توجيه 302 على صفحة انتقلت نهائيًا تقول لـ Google ما ليس صحيحًا. فإعادة التوجيه المؤقتة تُبقي الصفحة المصدر في النتائج، و«the target page might still be indexed if other canonicalization signals are present»، أي أن الصفحة الهدف قد تُفهرس أيضًا إذا وُجدت إشارات أخرى لاختيار العنوان الأساسي. وهذا احتمال لا وعد، ولم نجد صفحة من Google تَعِد بأن 302 طويلة العمر تتحول لاحقًا إلى 301. فلا تنتظر ذلك.

كم إعادة توجيه يتبع Google؟

تقول صفحة Google عن رموز الحالة: «By default, Google's crawlers follow up to 10 redirect hops.» ويتبع Googlebot عادةً عشر قفزات في محتوى الويب، وقد تكون لمنتجات Google الأخرى حدود أخرى، ويُتجاهل ما يرد به العنوان الذي يعيد التوجيه؛ وإنما يُعالج محتوى الهدف النهائي.

وعشر قفزات سقف لا غاية. ينصح دليل نقل المواقع بإعادة التوجيه مباشرة إلى الوجهة النهائية، وإذا تعذر ذلك فبإبقاء السلسلة قصيرة، والأفضل ألا تزيد على 3 قفزات وأن تقل عن 5. وسببه: «Chaining redirects adds latency for users, and not all user agents and browsers support long redirect chains.» وتضيف صفحة Google عن أخطاء الزحف (آخر تحديث ‎2025-12-18‎) أن السلاسل الطويلة تؤثر سلبًا في الزحف.

وتتكوّن السلاسل طبقةً فوق طبقة لا عن قصد. هذه سلسلة نموذجية فيها ثلاث قفزات قبل أن تظهر الصفحة:

http://example.com/old-guide       301 -> https://example.com/old-guide
https://example.com/old-guide      301 -> https://www.example.com/old-guide
https://www.example.com/old-guide  301 -> https://www.example.com/new-guide
https://www.example.com/new-guide  200

والحل قفزة واحدة لكل عنوان قديم: كل صيغة كتابة للعنوان القديم ترد بإعادة توجيه 301 واحدة تذكر العنوان النهائي. والأمر نفسه في روابطك أنت: اجعل الروابط الداخلية ووسوم canonical وعناصر خريطة الموقع تشير إلى العنوان النهائي. فإعادة التوجيه للزوار القادمين من الخارج وللإشارات المرجعية القديمة، لا لتنقلك الداخلي.

كيف تُعدّ إعادة توجيه 301

استخدم إعادة توجيه من جهة الخادم. تذكرها صفحة Google عن إعادة التوجيه بوصفها النوع الأرجح أن يفسره Google تفسيرًا صحيحًا. وقد شغّلنا مثالي nginx وNode أدناه في 4 نوفمبر 2026 (nginx 1.24.0 وNode 25.9.0) وقرأنا الردود بـ curl. أما سطرا Apache فمثال Google نفسه ولم نشغّله.

نبدأ بـ nginx. قاعدة location مكانها كتلة الخادم الخاصة بـ ‎https://example.com‎. وكتلتا الخادم الأخريان ترسلان كل صيغة كتابة أخرى إلى هناك في قفزة واحدة، و‎$request_uri‎ يحفظ المسار ومعاملات الاستعلام:

# صفحة واحدة انتقلت نهائيًا (استخدم 302 للانتقال المؤقت)
location = /old-guide {
    return 301 https://example.com/new-guide;
}

# http:// و https://www. كلاهما يذهب إلى https://example.com
server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://example.com$request_uri;
}

server {
    listen 443 ssl;
    server_name www.example.com;
    ssl_certificate     /etc/ssl/example.com.pem;
    ssl_certificate_key /etc/ssl/example.com.key;
    return 301 https://example.com$request_uri;
}

Node بلا حزم. استبدل 301 بـ 308 إذا كان يجب أن تبقى طلبات POST من نوع POST:

import http from 'node:http';

const moved = new Map([['/old-guide', '/new-guide']]); // المسار القديم -> المسار الجديد

http.createServer((req, res) => {
  const { pathname, search } = new URL(req.url, 'http://localhost');
  const target = moved.get(pathname);
  if (target) {
    res.writeHead(301, { location: `https://example.com${target}${search}` });
    return res.end();
  }
  res.writeHead(200, { 'content-type': 'text/plain' });
  res.end('ok');
}).listen(3000);

وهذا Apache من صفحة Google (في إعدادات الخادم أو في ملف ‎.htaccess‎):

Redirect permanent "/old" "https://example.com/new"
Redirect temp "/two-old" "https://example.com/two-new"

وإن لم تستطع التعامل مع الخادم فابدأ بمنصتك: يذكر Google منصتي Blogger وShopify مثالين على منصات قد تتضمن أدوات إعادة توجيه جاهزة. ويقرأ Google أيضًا وسم meta refresh (الصفر ثانية يُعدّ دائمًا والتأخير يُعدّ مؤقتًا) وإعادة التوجيه بـ JavaScript، لكن بوصفهما حلًّا احتياطيًا فقط. ومع JavaScript قد لا يراها Google أصلًا («might never see it») إذا فشل التصيير.

كيف تفحص إعادة التوجيه وماذا يجد SEOgrinder

يكفي أمرا curl. الأول يطبع كل قفزة مع حالتها وهدفها، والثاني يعطي العدد والعنوان النهائي. يستخدمان GET لا HEAD لأن بعض الخوادم تجيب عن HEAD بشكل مختلف:

curl -s -L -o /dev/null -D - http://example.com/old-guide | grep -i -E "^(HTTP|location)"
curl -s -L -o /dev/null -w "%{num_redirects} redirects, final: %{url_effective}\n" http://example.com/old-guide

شغّلهما لكل صيغة كتابة يصل بها الناس والروابط إليك: http وhttps، مع www وبدونها. والنتيجة المطلوبة إعادة توجيه 301 واحدة ثم الرمز 200.

SEOgrinder أداتنا ونحن من نبنيها. يتفحص الفحص المجاني في SEOgrinder إعادة التوجيه في ثلاثة مواضع (بأسماء الواجهة العربية):

  • تبويب «التقنية والأمان»، بطاقة «عمليات إعادة التوجيه». تسرد قفزات العنوان الذي فحصته. فإذا أعاد هذا العنوان التوجيه أكثر من مرة، تعرض المهمة «N عمليات إعادة توجيه متتالية» القفزات وتنصح بأن يشير عنوان URL الأول مباشرة إلى الوجهة النهائية.
  • التبويب نفسه، بطاقة «توحيد النطاق». تتوقع أن تنتهي http وhttps، مع www وبدونها، عند عنوان واحد. وتظهر المهمة «N نسخ متنافسة من الموقع» إن لم يحدث ذلك. وتظهر «إعادة توجيه النطاق مؤقتة فقط» إذا أعادت إحدى الصيغ التوجيه بالرمز 302 أو 303 أو 307.
  • تبويب «الصفحة في Google». تذكر المهمة «N رابط داخلي يمر عبر مسار التفافي» الروابط الداخلية التي يعيد هدفها التوجيه أو يحدد صفحة أخرى بوصفها canonical (حتى 60 رابطًا داخليًا للصفحة المفحوصة).

وللفحص حدّان. فاختبار السلاسل يشمل العنوان الذي فحصته وصيغ كتابة نطاقك، لا كل عنوان قديم في موقعك، فاختبر العناوين القديمة بـ curl. ولا يستطيع SEOgrinder أن يحكم هل الهدف خليفة مناسب، ولا كيف صنّف Google إعادة التوجيه. ويحوّل «تسليم إلى الذكاء الاصطناعي» المهمة إلى موجز لوكيل برمجة، وتجري «إعادة التحقق» فحصًا جديدًا بعد تغييرك.

الأخطاء الشائعة

  • استخدام 302 لانتقال دائم. قد يبقى العنوان القديم في النتائج. استخدم 301 أو 308.
  • استخدام 301 لشيء مؤقت. متجر مغلق أسبوعًا يحتاج إلى 302.
  • قواعد متراكمة تبني سلاسل. أولًا http ثم https ثم www ثم الصفحة الجديدة: ثلاث قفزات. اذكر العنوان النهائي في كل قاعدة.
  • إرسال كل شيء إلى الصفحة الرئيسية. وجّه إلى صفحة مكافئة، أو أجب بـ 404 أو 410.
  • روابط داخلية ما زالت تستخدم العنوان القديم. حدّث الروابط الداخلية ووسوم canonical وخريطة الموقع.
  • حجب العنوان القديم في robots.txt. عندئذٍ لا يستطيع Google جلبه فلا يرى إعادة التوجيه أبدًا. ففي تدوينة Google من 2011 Do 404s hurt my site? يقول Google إن الزاحف «has to be able to crawl that URL» ليرى جوابه.
  • إزالة إعادة التوجيه مبكرًا. في عمليات نقل المواقع يقول Google: ‏«Keep the redirects for as long as possible, generally at least 1 year.»‏ أما تطبيق ذلك على صفحة واحدة فهو قراءتنا نحن.

الأسئلة الشائعة

هل تضر إعادة توجيه 301 بالـ SEO؟

يقول دليل Google لنقل المواقع: «‎301 and other permanent redirects don't cause a loss in PageRank.» وهذه الجملة واردة في دليل نقل المواقع، فتطبيقها على صفحة واحدة قراءتنا نحن. أما ما يحذر منه Google فهو السلاسل الطويلة، وإعادة التوجيه إلى صفحات غير مناسبة (Soft 404)، وتقلبات الترتيب أثناء النقل ما دام يعيد الزحف.

هل 308 أفضل من 301؟

هما متكافئتان عند Google. والرمز 308 يحتفظ أيضًا بطريقة الطلب، وهذا مهم في النماذج وواجهات البرمجة. أما للصفحات العادية فتكفي 301.

كم يستغرق Google حتى يعرض العنوان الجديد؟

لا يذكر Google مدة لصفحة واحدة بحسب ما وجدنا. وفي عمليات نقل المواقع يقول إن الأمر قد يستغرق في المواقع المتوسطة «it can take a few weeks or more» حتى تحل العناوين الجديدة تدريجيًا محل القديمة في النتائج. فلا تَعِد بموعد.

خطوتك التالية

شغّل أمر curl الأول على عناوينك القديمة وعلى كل صيغة كتابة لنطاقك. فإذا احتاج أي طلب إلى أكثر من قفزة، فاجعل العنوان الأول يشير مباشرة إلى العنوان النهائي. ثم افحص موقعك عبر SEOgrinder، وافتح تبويب «التقنية والأمان»، وانظر إلى «عمليات إعادة التوجيه» و«توحيد النطاق»، واضغط «إعادة التحقق» بعد تغييرك. وللمزيد عن الأساسيات التقنية راجع قائمة تدقيق SEO عندنا.

اقرأ أيضًا

المزيد من المدونة