مقدمة

قبل تغيير سجلات DNS لنطاق في بيئة الإنتاج، من الحكمة التحقق من الموقع على الخادم الجديد. يقدّم هذا الدليل أربع طرق مصنفة حسب الفائدة: من الاختبار المحلي الأسرع إلى الاستنساخ/بيئة الاختبار الأكثر شمولاً. اختر الطريقة المناسبة لمستواك ونوع الموقع (ثابت، PHP/WordPress، تطبيق خارجي).

قبل البدء — المتطلبات المسبقة

  • الوصول إلى حسابك في cPanel: ضروري لاسترجاع عنوان IP الخاص بالخادم، لإنشاء نطاق فرعي أو لتعديل منطقة DNS. راجع: كيفية الوصول إلى حسابي في cPanel؟.
  • عنوان IP العام للخادم الجديد (أو عنوان IP المشترك لحساب cPanel).
  • صلاحيات مسؤول على جهاز الاختبار إذا كنت تنوي تعديل ملف hosts hosts.
  • للمواقع الديناميكية: الوصول إلى phpMyAdmin (أو WP Toolkit / Softaculous) لتعديل عنوان URL للاختبار إذا لزم الأمر. أدلة: phpMyAdmin, WordPress Toolkit.
  • إذا كانت منطقة DNS مُدارة لدى المسجل (خارج cPanel)، فضع في الحسبان تعديل السجلات لدى ذلك المزود.

الطريقة 1 — تعديل ملف hosts (اختبار محلي، الأكثر أمانًا لك وحدك)

المبدأ: سيستخدم جهازك عنوان IP الذي تحدده لاسم النطاق. التعديل محلي ولا يؤثر على الزوار. مفيد للتحقق من العرض والروابط واتصالات قاعدة البيانات.

الخطوات (Windows)

  1. استرجع عنوان IP الخاص بالخادم الجديد (انظر أدناه كيفية العثور عليه في cPanel).
  2. افتح المفكرة كمسؤول (انقر بزر الماوس الأيمن → تشغيل كمسؤول).
  3. ملف → فتح → C:\Windows\System32\drivers\etc\hosts. اختر «كل الملفات» لعرض الملف.
  4. أضف السطر التالي في أعلى الملف: 203.0.113.10 example.com www.example.com (استبدل عنوان IP والنطاق بالقيم الخاصة بك).
  5. احفظ. افرغ ذاكرة التخزين المؤقت المحلية لنظام DNS: في نافذة طرفية بصلاحيات المسؤول نفّذ ipconfig /flushdns، ثم قم بتحديث متصفحك (أو أعد تشغيله).

خطوات (macOS / Linux)

  1. افتح نافذة طرفية وحرّر: sudo nano /etc/hosts (أو المحرّر المفضّل لديك).
  2. أضف نفس السطر أعلاه: IP ثم أسماء النطاقات مفصولة بمسافات.
  3. احفظ (Ctrl+O)، اخرج (Ctrl+X). على macOS، نفّذ sudo dscacheutil -flushcache وإذا لزم الأمر، sudo killall -HUP mDNSResponder. على Linux، تختلف الأوامر حسب التوزيعة (مثلاً sudo systemd-resolve --flush-caches في بعض الأنظمة)؛ إعادة تشغيل المتصفح خيار بديل بسيط.

نقاط مهمة

  • الملف hosts لا يؤثر إلا على الجهاز المُعدّل: مثالي للاختبارات الخاصة.
  • تظل رسائل البريد الإلكتروني (سجلات MX) موجهة إلى الخادم القديم طالما لم تغيّر سجلات DNS العامة.
  • HTTPS: توقع تحذيرات شهادة (عدم تطابق) لأن شهادة الخادم ليست مُصدرة لعنوان IP المحلي. لاختبار HTTPS، استخدم نطاقًا فرعيًا عامًا (الطريقة 3).
  • بعد الانتهاء من الاختبارات، احذف الإدخال الذي أضفته في hosts للعودة إلى توجيه DNS الطبيعي.

الطريقة 2 — عنوان URL مؤقت عبر mod_userdir (http://IP/~utilisateur)

إذا قام مزود الاستضافة بتفعيل mod_userdir، يمكنك فتح عنوان URL http://IP/~username. الميزة: لا يلزم تغيير محلي على الأجهزة. العيب: عدم توافق شائع مع بعض معالجات PHP وأخطاء متعلقة بالمسارات.

خطوات

  1. اسأل مزود الاستضافة إن كان يسمح بالوصول عبر http://IP/~usernameإذا كنت تدير الخادم باستخدام WHM، فستجد الخيار في Security Center → Apache mod_userdir Tweak.
  2. افتح http://203.0.113.10/~username (مثال) في متصفحك.

القيود

  • التعارضات الشائعة: تشغيل PHP عبر CGI/FastCGI أو PHP‑FPM وبعض الوحدات (مثل mod_ruid2) قد يمنع السكربتات من العمل بشكل صحيح؛ وقد تظهر أخطاء 500.
  • SSL: الوصول عبر عنوان IP أو عبر URL مؤقت سيؤدي إلى ظهور تحذير بشأن الشهادة.
  • قد لا يسمح دائمًا بإعادة إنتاج التكوين الدقيق (المسارات، مجلدات documentroot، قواعد .htaccess المعتمدة على اسم المضيف).

الطريقة 3 — إنشاء نطاق فرعي للاختبار وإضافة سجل A (يوصى بالاختبار العام)

الطريقة الأقرب إلى التبديل الفعلي: قم بإنشاء test.votredomaine.tld وجّه سجل A الخاص به إلى عنوان IP الجديد. يمكنك مشاركة عنوان URL مع العميل والحصول على شهادات AutoSSL لتمكين HTTPS بعد اكتمال الانتشار.

افتح Zone Editor في لوحة تحكم cPanel
افتح Zone Editor في cPanel لإضافة أو تعديل سجل A.

الخطوات (في cPanel)

  1. سجّل الدخول إلى cPanel (انظر كيفية الوصول إلى حسابي في cPanel؟).
  2. افتح Zone Editor (Domains → Zone Editor). حدد النطاق ثم انقر على Manage.
  3. انقر على Add Record، اختر النوع A. املأ:
    • Name : test (هذا ينشئ test.votredomaine.tld)
    • Address : عنوان IP للخادم الجديد
  4. احفظ. انتظر اكتمال الانتشار (قد يستغرق من دقائق قليلة إلى عدة ساعات حسب التخزين المؤقت وقيمة TTL).
نموذج لإضافة سجل A في منطقة DNS
مثال: إضافة سجل A يوجّه test.votredomaine.tld إلى عنوان IP الجديد.

نصائح عملية

  • إذا كانت منطقة DNS مُدارة لدى مسجل نطاق خارجي (registrar)، فأنشئ سجل A لدى ذلك المزود.
  • لاختبار HTTPS: انتظر اكتمال الانتشار ثم فعّل AutoSSL (cPanel) على test.votredomaine.tld للحصول على شهادة صالحة.
  • خفّض قيمة TTL قبل بضع ساعات من عملية التحويل المخطط لها لتسريع الانتشار إذا أمكن.

الطريقة 4 — الاستنساخ / بيئة تجريبية (لـ WordPress والمواقع الديناميكية المعقدة)

لموقع WordPress أو لتطبيق معقّد، أنشئ نسخة (clone) على نطاق فرعي — هذا يتجنّب أي تعارض مع النسخة الإنتاجية ويسمح بإجراء اختبارات وظيفية واختبارات أداء شاملة.

نموذج استنساخ موقع WordPress في WP Toolkit
WP Toolkit (cPanel): استنساخ تثبيت WordPress إلى نطاق فرعي أو مجلد اختبار.

الاستنساخ باستخدام WP Toolkit (cPanel)

  1. افتح WP Toolkit في cPanel، حدّد التثبيت الذي تريد استنساخه.
  2. اختر Clone : حدد الوجهة (نطاق فرعي أو مجلّد)، تحقّق من إعدادات قاعدة البيانات وابدأ عمليّة الاستنساخ.
  3. بعد الاستنساخ، عطّل أي ملحق للتخزين المؤقّت (plugin) ثم اختبر الوظائف: تسجيل دخول المشرف، النماذج، المدفوعات، إلخ.

استنساخ يدوي (لغير WordPress أو إذا لم يكن WP Toolkit متاحًا)

  1. انسخ الملفات باستخدام File Manager أو عبر FTP إلى مجلد الاختبار (مثلاً test.votredomaine.tld/public_html test.votredomaine.tld/public_html).
  2. صدّر قاعدة البيانات عبر phpMyAdmin واستوردها في قاعدة جديدة؛ حدّث ملف التكوين (مثلاً wp-config.php wp-config.php).
  3. حدّث عناوين URL في قاعدة البيانات (WordPress : siteurl siteurl و home home في جدول wp_options wp_options) — استخدم phpMyAdmin لتعديلها بحذر.
تعديل إدخالات siteurl و home في WordPress عبر phpMyAdmin
phpMyAdmin : تعديل siteurl siteurl و home home إذا كان الاستنساخ مُقدَّمًا عبر نطاق فرعي.

إجراءات يجب تنفيذها بعد الاختبارات (قائمة تحقق)

  1. أزل الإدخال المُضاف إلى ملف hosts hosts على أجهزة الاختبار الخاصة بكم.
  2. احذف النطاق الفرعي للاختبار أو أعد تخصيصه إذا لم تعد بحاجة إليه.
  3. سجّل تكوين DNS الحالي (A، MX، TXT) قبل أي تحويل لتتمكّن من الاستعادة في حال حدوث مشكلة.
  4. بعد تعديل سجلات DNS العامة، راقب انتشارها وقابلية تسليم رسائل البريد الإلكتروني (سجلات MX وSPF/DKIM/DMARC).

استكشاف الأخطاء السريع

  • ما زلت أرى الموقع القديم : تحقّق من ملف hosts hosts (جميع أجهزة الاختبار) امسح ذاكرة التخزين المؤقت للمتصفح، وامسح ذاكرة التخزين المؤقت للتطبيق (إضافات WordPress)، وانتظر الانتشار إذا قمت بإضافة سجل A.
  • خطأ 500 / صفحة بيضاء : راجع سجلات الأخطاء في cPanel (Metrics → Errors) وتحقق من إصدار PHP في MultiPHP Manager. إذا كان الموقع يعمل عبر ملف hosts hosts ولكن ليس عبر mod_userdir، فغالبًا ما يكون السبب عدم توافق معالج PHP.
  • تحذير شهادة HTTPS : أمر طبيعي إذا اختبرت عبر عنوان IP أو عبر ملف hosts. hostsللتحقق من HTTPS، استخدم نطاقًا فرعيًا عامًا واطلب شهادة AutoSSL بعد أن يشير النطاق الفرعي إلى الخادم.
  • تعذّر تسجيل الدخول إلى WordPress : حدّث siteurl siteurl و home home في phpMyAdmin (الجدول wp_options) wp_options، احذف ملفات تعريف الارتباط المتعلقة بالموقع وعطّل إضافات الأمان/التخزين المؤقت إذا لزم الأمر.
  • الخدمات الخارجية (OAuth، المدفوعات) لا تعمل : غالبًا ما تتحقق هذه الخدمات من عنوان URL الدقيق. اختبر على نطاق فرعي عام أو في بيئة staging متاحة علنًا بدلًا من الاعتماد على hosts ملف hosts محليًا.

قيود مهمة

  • الاختبار عبر ملف hosts hosts لا يعكس تجربة زوارك (ذاكرات التخزين المؤقت العامة لسجلات DNS، شبكات CDN، القواعد المعتمدة على عنوان IP للعميل، والخدمات الخارجية التي تتحقق من النطاق).
  • شهادة TLS/HTTPS وHSTS: قد تُخفي الاختبارات المحلية مشكلات لا تكشف عنها سوى النسخة العامة.
  • قد يُظهر mod_userdir سلوكيات مختلفة (المسارات، رؤوس HTTP) مقارنةً بموقع يُقدّم باسم النطاق الفعلي.

ما الطريقة التي أختارها؟

  • اختبار سريع بمفردك (للمطور): ملف hosts hosts.
  • مشاركة مع عميل / QA: نطاق فرعي + سجل A (الطريقة 3).
  • التحقق من HTTPS والخدمات الخارجية: نطاق فرعي عام (يمكن تفعيل AutoSSL).
  • موقع WordPress معقد: استنساخ/بيئة اختبار (staging) عبر WP Toolkit أو Softaculous (الطريقة 4).

الموارد الداخلية

الملخص

لإجراء فحوصات سريعة ومحصورة محليًا، عدّل ملف hosts hosts.

وثائق مرجعية

تم الاطلاع على التوثيق في 16 أكتوبر 2026. قد تختلف الأدوات بحسب مزوّد الاستضافة.