تخطَّ إلى المحتوى

استضافة cPanel: دليل عملي شامل

القسم 1 من 7
الحجم 3 من 5

الاستضافة03/08ضمن مسار «من الاستضافة المشتركة إلى خادمك الخاص» · المقال 4 من 8

استضافة cPanel: دليل عملي شامل

أين تدير كل شيء في cPanel، وكيف تقرأ حدود CloudLinux في صفحة Resource Usage، مع Softaculous وJetBackup وuapi، وأسباب أخطاء 508 و503.

عبد الواحد محمدكاتب محتوى في tech+8 دقائق قراءة

يرى زوار موقعك خطأ «508 Resource Limit Is Reached» كل يوم قرابة العاشرة صباحاً، ثم يختفي. الخادم ليس معطلاً، وجيرانك على الخادم نفسه لا يشكون شيئاً: حسابك وحده بلغ أحد حدوده. هذا المفهوم يفسر معظم ما يحدث في استضافة cPanel المشتركة: كل حساب يعمل داخل حدود ثابتة يفرضها CloudLinux، وكل أداة في اللوحة تعمل ضمنها. يشرح هذا الدليل أين تدير كل شيء في cPanel، وكيف تقرأ حدود حسابك، وكيف تستخدم الطرفية وuapi، وما الذي يقف خلف الأخطاء الشائعة.

01خريطة cPanel: ماذا تدير ومن أين

تجمع واجهة cPanel الحالية (Jupiter) أدواتها في مجموعات، وتبحث عن أي أداة بالضغط على المفتاح /. هذه المهام اليومية وأين تجدها:

المهمةالأداةملاحظة عملية
إضافة نطاق أو نطاق فرعيالنطاقات (Domains)اجعل مجلد كل نطاق خارج public_html ليبقى كل موقع مستقلاً
سجلات DNSمحرر المنطقة (Zone Editor)لا يؤثر إلا إن كان النطاق يستخدم خوادم أسماء الاستضافة
البريدحسابات البريد الإلكتروني ومرشحاتهتحقق من SPF وDKIM في أداة Email Deliverability
الملفاتإدارة الملفات وحسابات FTPاستخدم SFTP بدل FTP غير المشفّر
قواعد البياناتقواعد بيانات MySQL وPostgreSQL وphpMyAdminمستخدم لكل تطبيق بصلاحيات قاعدته وحدها
الشهاداتSSL/TLS StatusAutoSSL يصدر الشهادة ويجددها لكل نطاق يشير إلى الخادم
المهام المجدولةCron Jobsوجّه مخرجات المهمة إلى ملف أو أسكتها، وإلا وصلتك رسالة في كل تشغيل
إصدار PHPSelect PHP Versionالإصدار والإضافات وقيم مثل memory_limit من مكان واحد
المواردResource Usageأول صفحة تفتحها حين يبطؤ الموقع

02حدود CloudLinux: كيف تقرأ Resource Usage

يضع CloudLinux كل حساب داخل تحدد ما يستهلكه من موارد الخادم. الحساب الذي يبلغ حده يُبطَّأ أو تُرفض طلباته الجديدة، بينما تبقى الحسابات الأخرى سليمة. ستة حدود تهمك:

الحدما يقيسهما يحدث عند بلوغه
SPEED (المعالج)نسبة من نواة واحدة: 100% تعني نواة كاملةيُبطَّأ الحساب دون رسالة خطأ
PMEM (الذاكرة)الذاكرة الفعلية لكل عمليات الحسابتتوقف عمليات PHP ويظهر خطأ 503 أو 500
EPالطلبات الديناميكية المتزامنةخطأ 508 للطلبات الجديدة
NPROCكل العمليات: PHP والمهام المجدولة وSSHخطأ 508 أو 500، وتفشل المهام المجدولة
IOسرعة القراءة والكتابة على القرصتبطؤ العمليات الثقيلة كالنسخ وفك الضغط
IOPSعدد عمليات القرص في الثانيةبطء مع الملفات الصغيرة الكثيرة

وحد (EP) أكثرها سوء فهم. هو ليس عدد الزوار، بل عدد الطلبات التي يعالجها حسابك في اللحظة نفسها. ويحكمه قانون بسيط: التزامن يساوي معدل الطلبات مضروباً في مدتها. موقع يستقبل 5 طلبات ديناميكية في الثانية، يستغرق كل منها 400 ميلي ثانية، يشغل عمليتين في المتوسط. فإن تباطأت قاعدة البيانات وصار الطلب 4 ثوانٍ، احتاجت الحركة نفسها 20 عملية، وظهر خطأ 508. لذلك فأخطاء EP في الغالب عرَض لبطء الطلبات، لا لكثرة الزوار.

زبائن يقفون في طابور أمام منضدة مخبز مزدحم صباحاً، يظهرون من الخلف، ويدا خبّاز تناولان الخبز.
كما في طابور المخبز، إن طال تحضير كل طلب ازدحم المكان بالعدد نفسه من الزبائن، وهذا ما يفعله الطلب البطيء بحد EP.

وتقرأ صفحة Resource Usage هكذا: في أعلاها تنبيه إن بلغ حسابك أي حد خلال آخر 24 ساعة، وتحته رسوم بيانية لكل مورد يظهر فيها الحد خطاً أفقياً، ثم جدول بعدد مرات البلوغ (Faults) لكل حد. اختر الفترة التي ظهر فيها الخطأ، وابحث عن الحد الذي ارتفعت أعطاله في الدقائق نفسها، ثم طابقها مع سجل الوصول (Raw Access) لتعرف أي صفحات أو أي عناوين كانت تطلب في تلك اللحظة.

03خطط cPanel لدى إليفانتي بالأرقام

هذه موارد الخطط الثلاث كما تنشرها إليفانتي، والمعالج والذاكرة فيها تقابلهما حدود المعالج والذاكرة في صفحة Resource Usage:

الموردcPanel StartcPanel PowercPanel Infinity
المعالجنواة واحدةنواتان4 أنوية
الذاكرة DDR5 ECC1 غيغابايت2 غيغابايت3 غيغابايت
تخزين NVMe20 غيغابايت30 غيغابايت40 غيغابايت
Inodes250,000375,000600,000
النطاقات5غير محدودغير محدود
مساحة صندوق البريد2 غيغابايتغير محدودةغير محدودة
الاحتفاظ بالنسخ الاحتياطية15 يوماً30 يوماً45 يوماً
الزيارات الشهرية التقديريةنحو 35,000نحو 75,000نحو 150,000

وفي الخطط الثلاث: LiteSpeed مع LSCache، وCloudLinux، وImunify360، وJetBackup، وRedis، وPHP من 5.6 إلى 8.5، وMariaDB وPostgreSQL بقواعد غير محدودة، وSSH وSFTP، وGit، والمهام المجدولة، وNode.js وPython، وشهادات AutoSSL. وعدد الزيارات تقدير: ما يحدد قدرة خطتك فعلاً هو زمن معالجة الطلب ونسبة ما يُخدم من التخزين المؤقت.

أما الرقم الذي يفاجئ أصحاب المواقع أكثر من غيره فهو : كل ملف ومجلد ورسالة بريد يستهلك واحداً. مجلد node_modules واحد قد يضم عشرات الآلاف من الملفات، وصندوق بريد لم يُفرَّغ منذ سنوات مثله، وملفات تخزين مؤقت لإضافة سيئة الضبط قد تملأ ما تبقى. راقب العدد في الإحصائيات على الصفحة الرئيسية للوحة.

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

04Softaculous وPHP والنسخ الاحتياطي

يثبّت أكثر من 280 تطبيقاً، منها WordPress وJoomla وPrestaShop، وينشئ قاعدة البيانات ومستخدمها بنفسه. فعّل فيه التحديث التلقائي مع النسخة الاحتياطية قبل كل تحديث، فهذا يغطي أشيع حالات الكسر. ونشرح ضبط WordPress للأداء في مقال مستقل على المدونة.

ومن Select PHP Version تختار إصدار PHP للحساب، وتفعّل الإضافات التي يحتاجها تطبيقك مثل intl وimagick وredis، وتضبط قيماً مثل memory_limit وupload_max_filesize. تذكّر أن memory_limit حد للعملية الواحدة، بينما PMEM حد للحساب كله: ثلاث عمليات بحد 512 ميغابايت لكل منها تتجاوز ذاكرة خطة بغيغابايت واحد.

أما JetBackup فيأخذ نسخة يومية تلقائية تُحفظ على خوادم منفصلة، تستعيد منها الحساب كاملاً، أو الملفات، أو قاعدة بيانات بعينها، أو البريد، أو ملفاً واحداً. ومدة الاحتفاظ تختلف بحسب الخطة، فإن احتجت تاريخاً أطول، كنسخة شهرية تبقى سنة، فنزّل نسخة كاملة كل شهر واحفظها في مكان آخر.

يد توصل قرصاً صلباً خارجياً صغيراً بحاسوب محمول على مكتب، وشاشة الحاسوب غير واضحة.
نسخة شهرية كاملة تنزّلها وتحفظها بعيداً عن الخادم تعطيك تاريخاً أطول مما تحتفظ به خطتك.

05الطرفية وuapi

تتيح لك الخطط الدخول عبر SSH، أو من أداة Terminal داخل cPanel. وهنا يصبح uapi، واجهة cPanel البرمجية من سطر الأوامر، أسرع طريق للمهام المتكررة. يعمل بصلاحيات حسابك، ويعيد النتيجة بصيغة YAML أو JSON:

أوامر uapi للحصص والنطاقات وقواعد البيانات والشهادات
# الحصص والاستهلاك: القرص والـ Inodesuapi Quota get_quota_info# النطاقات المرتبطة بالحسابuapi DomainInfo list_domains# قواعد MySQL الموجودةuapi Mysql list_databases# قاعدة جديدة ومستخدم بصلاحيات محددة (يبدأ الاسمان باسم حسابك)uapi Mysql create_database name=nawras_shopuapi Mysql create_user name=nawras_app password='Replace-With-A-Long-Random-Password'uapi Mysql set_privileges_on_database user=nawras_app database=nawras_shop privileges=SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,INDEX# الشهادات المثبتة بصيغة JSON مقروءةuapi --output=jsonpretty SSL list_certs

و تضيفها من واجهة Cron Jobs أو بالأمر crontab. هذا مثال لمجدول تطبيق Laravel كل دقيقة، مع إسكات المخرجات حتى لا تصلك رسالة بريد في كل تشغيل، فتلك الرسائل تستهلك Inodes أيضاً:

إضافة مهمة مجدولة لتطبيق Laravel من الطرفية
# استبدل /usr/local/bin/php بالمسار الذي يعيده الأمر which php(crontab -l 2>/dev/null; echo "* * * * * cd $HOME/apps/tawsil && /usr/local/bin/php artisan schedule:run >/dev/null 2>&1") | crontab -# مراجعة المهام الحاليةcrontab -l

06أعطال شائعة وما خلفها

معظم ما يراه الزوار من أخطاء في الاستضافة المشتركة يعود إلى حد بلغه الحساب أو إلى إعداد خاطئ. هذه أكثرها تكراراً:

المشكلةخطأ 508 Resource Limit Is Reached في أوقات محددة
الحلافتح Resource Usage للفترة نفسها: إن ارتفعت أعطال EP أو NPROC، فابحث في سجل الوصول عن الطلبات البطيئة أو عن روبوت يغرق الموقع. فعّل التخزين المؤقت واحجب المصدر قبل أن ترقّي الخطة.
المشكلةخطأ 503 أو صفحات بيضاء أثناء استيراد أو تصدير كبير
الحلبلغ الحساب حد الذاكرة PMEM فأُوقفت عمليات PHP. قسّم العملية إلى دفعات أصغر وشغّلها في وقت هادئ، وراجع memory_limit.
المشكلةرسائل البريد ترتد بخطأ امتلاء رغم وجود مساحة على القرص
الحلالأرجح أنك بلغت حد Inodes أو حصة صندوق البريد. أفرغ المهملات والرسائل المزعجة، واحذف ملفات التخزين المؤقت القديمة والنسخ المتروكة في مجلد الحساب.
المشكلةAutoSSL لا يصدر شهادة لنطاق أو نطاق فرعي
الحليفشل التحقق إن كان سجل A أو AAAA يشير إلى خادم آخر، أو كان سجل CAA لا يسمح بجهة الإصدار. صحّح السجلات، وتحقق من انتشارها بأداة «فحص انتشار DNS»، ثم شغّل AutoSSL من SSL/TLS Status.
المشكلةخطأ 500 بعد تعديل ملف .htaccess
الحلخطأ نحوي في الملف أو تعليمة لا يدعمها الخادم. أعد آخر تعديل، واقرأ السبب في أداة Errors ضمن قسم Metrics.

07توصية عملية

اجعل لك روتيناً أسبوعياً من عشر دقائق: افتح Resource Usage وابحث عن أي أعطال، وراجع عدد Inodes، وتأكد أن آخر نسخة JetBackup اكتملت، وحدّث تطبيقاتك. أبقِ PHP على إصدار مدعوم أمنياً، واجعل كل ما يتكرر سكربتاً أو مهمة مجدولة بدل نقرات تحاول تذكّرها.

وإن بقيت أعطال المعالج أو EP مرتفعة على خطة Infinity رغم أن طلباتك سريعة وتخزينك المؤقت يعمل، فقد حان وقت موارد لا يشاركك فيها أحد. خادم CoreVPS برخصة cPanel ينقلك إلى تلك الموارد ويبقيك على اللوحة التي تعرفها.

اختبر فهمك للمقال

ثلاثة أسئلة، دقيقة واحدة

⁦0 / 3⁩المجموعة 1

  1. 01يظهر خطأ 508 كل صباح لدقائق، ولا يشكو أحد غيرك على الخادم. ما التفسير الأرجح؟

  2. 02يستقبل موقعك 5 طلبات ديناميكية في الثانية، وصار كل طلب يستغرق 4 ثوانٍ بعد بطء قاعدة البيانات. كم عملية متزامنة تحتاج تقريباً؟

  3. 03رسائل البريد ترتد بخطأ امتلاء رغم أن القرص مستخدم بنسبة 40%. ما أول ما تفحصه؟

جاهز لتبدأ؟ عزّز مشاريعك اليوم

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

نطاق .com سنوياً
$17
استضافة cPanel شهرياً
$2
خوادم CoreVPS شهرياً
$3.50