كلُّ تغييرٍ يُجرى مباشرةً على موقعٍ حيّ تغييرٌ جُرّب على عملائك. ونسخةُ التجربة تكلّف نطاقًا فرعيًّا وتُزيل ذلك تمامًا — ما دامت ثلاثةُ أشياء مضبوطة، فموقعُ تجربةٍ مهمَل يُلحق ضررًا حقيقيًّا.
١. أبقِه خارج نتائج البحث
نسخةُ تجربةٍ تفهرسها جوجل تنافس الموقعَ الحقيقيّ على محتواه هو، فيهبط العملاء على صفحةٍ نصفِ منجَزة. احجبها قبل وجودها لا بعده.
# nginx, on the staging server block only
add_header X-Robots-Tag "noindex, nofollow" always;
واحمِه بكلمة مرور كذلك — فتلك الطريقةُ الوحيدة التي تمنع أيضًا مشاركةَ رابطٍ سهوًا.
٢. أوقفه عن إرسال البريد
نسخةُ تجربةٍ فيها جدولُ طلباتٍ حيّ ستراسل عملاء حقيقيّين بشأن طلبات اختبار. وجّه البريد إلى صائدٍ، أو عطّل الإرسال بالكلّيّة.
# WordPress: a tiny must-use plugin
add_filter('pre_wp_mail', '__return_false');
٣. وجّه المدفوعات إلى صندوق الرمل
مفاتيحُ اختبارٍ دائمًا. فموقعُ تجربةٍ بمفاتيح دفعٍ حيّة سيأخذ مالًا حقيقيًّا من بطاقةٍ حقيقيّة أثناء اختبار.
الانتقال إلى الحيّ
- خذ نسخةً احتياطية من الموقع الحيّ أوّلًا — الملفّات وقاعدة البيانات. فهذا زرُّ التراجع.
- ادفع الملفّات لا قاعدة البيانات إن تغيّر المحتوى على الحيّ — وإلّا كتبت فوق الطلبات والتعليقات التي جرت منذ النسخة.
- ولا تدفع قاعدة البيانات إلّا إن لم يتغيّر المحتوى على الحيّ — ثمّ ابحث واستبدل عنوانَ التجربة بعنوان الحيّ.
- فرّغ كلّ مخزن — التطبيقَ والخادم وشبكة التوصيل. فمخزنُ الصفحات سيقدّم الموقع القديم ساعات.
- امشِ في المسار الحرج — سجّل الدخول، وأضف إلى السلّة، وادفع، واستقبل البريد.
wp search-replace 'https://staging.yourdomain.com' 'https://yourdomain.com' --all-tables
ولا تدفع قاعدة البيانات فوق متجرٍ حيٍّ أبدًا. انشر الشفرة، وأجرِ تغييرات المحتوى على الحيّ. فأيُّ اتّجاهٍ يسير فيه كلُّ صنفٍ من التغيير هو الانضباطُ كلُّه.
