16أغسطس

إعادة توجيه الروابط بين مدونات ووردبريس عبر htaccess

قمت مؤخرًا بنقل مدونتي إلى الدومين الجديد ameen.io، وواجهتني مشكلة غريبة جدًا أثناء قيامي بعملية النقل من الدومين القديم والجديد. كان احتياجي الأساسي في عملية النقل هو أن يقوم الويب سيرفر بتحويل جميع الروابط القديمة الخاصة بالمدونة وبما في ذلك التدوينات السابقة التي قمت بكتابتها إلى الرابط الجديد، على سبيل المثال عند زيارة الروابط التالية:

ameenali.com/blog/
www.ameenali.com/blog/2014/12/difference-between-thick-and-thin-provisioning/

أريد أن يتم تحويل الزائر بشكل تلقائي إلى الروابط التالية:

ameen.io/blog/
ameen.io/blog/2014/12/difference-between-thick-and-thin-provisioning/

تبدو المهمة سهلة جدًا، ومن الممكن أن تتم في غضون دقائق عبر بعض التعديلات على ملف htaccess الخاص بالدومين القديم ameenali.com. المشكلة التي واجهتني هي أنه بغض النظر عن أي كود إعادة توجيه أقوم بتجربته في ملف htaccess فالعملية تفشل تمامًا، وفي أغلب الأحيان ألاحظ أنه مهما أضفت من تعديلات فالتغيير غير مؤثر أبدًا.

استعنت بصديقي أحمد، أحد أفضل مطوري الويب الذين أعرفهم، للنظر في المشكلة. وهذا الكود الذي استخدمه لإتمام عملية إعادة التوجيه:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?ameenali.com$ [NC] RewriteRule ^(.*) http://ameen.io/$1 [R=301,L]

وللأسف لم يكن هذا كفيلًا بحل المشكلة. بعد محاولات عديدة وإعادة التفكير في المشكلة اكتشفنا مصدر الخطأ البسيط.

عند تركيب مدونة ووردبريس في مجلد معين على الويب سيرفر، فأنه يكون معها ملف htaccess خاص بها، وهكذا الحال لكل مدونة أو موقع تقوم بتركيبه. المشكلة كانت في تعارض ملفات htaccess بين المدونات. فعندما يتم تحويل الرابط من الموقع الأساسي ameenali.com إلى مجلد الموقع الجديد ameen.io، تتم قراءة ملف htaccess الآخر في الموقع الجديد بطريقة تتسبب في إيقاف عملية إعادة التحويل، وتظهر الصفحة من الموقع القديم بدلًا من الجديد. أبسط حل للتأكد مما إذا كانت هي مصدر المشكلة هي بتغيير اسم ملف htaccess في الموقع الجديد مؤقتاً إلى اسم آخر مثل xhtaccess ومشاهدة النتيجة. ولحسن الحظ كانت هذه الخطوة كافية لأن تعمل إعادة التوجيه بشكل صحيح.

الدرس المستفاد من هذه التدوينة: ابدأ دائمًا بالأمور البسيطة والواضحة عند تشخيص أي مشكلة، ثم تعمّق شيئًا فشيئًا حتى تصل لمصدر المشكلة.

شارك التدوينة !

3 تعليقات

  1. شكراً على مشاركة تجربتك 🙂 ملفا HTACEESS في النطاقين تعارضا والنتيجة تعطل التوجيه !

    سؤال ، هل توجد مدة زمنية مثلى لصاحب الموقع يبقي فيها موقعه القديم قيد التشغيل ؟ أم يقفله مباشرة ويترك زوار القديم ؟

    • العفو يا عبدالناصر، وإن شاء الله تكون فيها الفائدة،
      بالنسبة للمدة الزمنية المثلى، ماقد مرت علي أنه يوجد مدة معينة. الأهم حسب ما أعرف أن تكون عملية نقل الروابط سليمة وأن تستمر في العمل حتى لاتخسر ترتيبك في محرك قوقل، من الأشياء المهمة اللي تسويها مثلًا هو ربط موقعك الجديد مع Google Webmaster Tools ورفع خريطة الموقع عليها. هنا بعض النصائح من قوقل عن الإنتقال لدومين جديد: http://googlewebmastercentral.blogspot.com/2008/04/best-practices-when-moving-your-site.html

  2. مشكور اخي
    نتمنى مزيد من التقدم والابداع

اضف رد

لن يتم نشر البريد الإلكتروني . الحقول المطلوبة مشار لها بـ *

*

© جميع الحقوق مبذولة