لماذا تتفوق بيئة تشغيل PHP المُدارة على خادم VPS خام
على خادم VPS خام تملك الحزمة بأكملها: تحديثات نظام التشغيل، وتجمّع PHP-FPM، وإعدادات خادم الويب، وتجديد TLS، وقواعد جدار الحماية، وخدمة قاعدة البيانات. أي انحراف في أي منها يعطّل الموقع، ومعظم هذا العمل لا علاقة له بتطبيقك. تمنحك منصة PHP المُدارة بيئة تشغيل PHP 8 مدعومة مع الإضافات المعتادة حاضرة سلفًا، فتنكمش مسؤوليتك إلى الشيفرة واعتمادياتها وإعداداتها — أي الأجزاء التي تخصّك فعلًا.
ملائمة لأطر العمل Laravel وSymfony
تتوقع أطر العمل الحديثة تخطيطًا محددًا: جذر مستند public/، ومجلد storage أو var قابل للكتابة، واعتماديات يديرها Composer، ومكانًا لتشغيل ترحيلات قاعدة البيانات عند النشر. تنعكس المنصة على ذلك مباشرة — تضبط جذر المستند على public/، وتُبقي بقية الشجرة خاصة، وتربط أوامر composer install وترحيلات artisan/console بخطوات النشر. يتوفر Redis للتخزين المؤقت والطوابير والجلسات، وهو تحديدًا ما يحتاجه عامل طابور Laravel أو تجمّع تخزين Symfony المؤقت.
MySQL وRedis مُدارتان دون أن تكون مسؤول قواعد بيانات
إن إقامة MySQL وRedis بنفسك تعني الضبط والنسخ الاحتياطي وإدارة المستخدمين وتحديثاتها المستمرة. هنا كلاهما إضافة مُدارة: تُجهّزهما، وتُحقن المضيف والمنفذ والمستخدم وكلمة المرور في بيئة التطبيق بدلًا من لصقها في ملف إعداد. يبقي هذا الأسرار خارج سجل Git، ويتيح تدوير كلمة مرور قاعدة البيانات دون إعادة نشر الشيفرة، ويعني أن مخزن البيانات يُصان بمعزل عن بيئة تشغيل تطبيقك.
انشر بالطريقة التي يعمل بها فريقك أصلًا
ليس كل مشروع PHP على Git بعد، ولا بأس بذلك. يمكن رفع موقع صغير أو تطبيق قديم عبر مدير الملفات ليصبح حيًّا في دقائق. أما الفريق الذي يملك مستودعًا فيربط Git أو GitHub ويحصل على النشر بالدفع مع خطوات بناء محددة — composer install وبناء الواجهة الأمامية والترحيلات — فتصبح الإصدارات قابلة للتكرار بدلًا من سحب وإفلات عبر SFTP ينسى فيه أحدهم ملفًا. تظهر حالة النشر ووقت آخر نشر في اللوحة.
التخزين المؤقت على الحافة وWAF أمام PHP الديناميكي
تستهلك تطبيقات PHP وحدة معالجة حقيقية في إخراج الصفحات، لذا فإن تقديم الاستجابات القابلة للتخزين المؤقت من الحافة يحمي بيئة تشغيلك مباشرة من الحمل. أنت تقرر أي المسارات آمنة للتخزين المؤقت — كتالوج عام أو مقال — وأيها يُنفَّذ دومًا، مثل لوحة تحكّم لمستخدم مسجّل الدخول أو نقطة نهاية POST. يجلس WAF على الحافة أمام التطبيق، فيرشّح حركة الحقن والماسحات قبل وصولها إلى PHP، وتُبقي شهادات SSL التلقائية HTTPS صالحًا دون مهمة cron للتجديد.
مسار محكوم لتحديث شيفرة PHP القديمة
التطبيقات القديمة المكتوبة لـ PHP 5 أو لنظام إدارة محتوى غير مُصان محفوفة بالمخاطر عند المساس بها، لكنها لا تستطيع البقاء على بيئة تشغيل منتهية الدعم إلى الأبد. تمنحك المنصة مكانًا لجلب الشيفرة، ونقل قاعدة بياناتها إلى MySQL مُدارة بمجموعة المحارف الصحيحة، وتشغيلها على PHP 8 حيث يمكنك رصد التحذيرات المهجورة وإصلاحها. تتحقق من صحتها عبر رابط مؤقت وتضع WAF أمام شيفرة لم تعد تتلقى ترقيعات أمان، فتقلّ مساحة الهجوم العامة حتى قبل تنظيف الشيفرة بالكامل.
كيفية النشر خطوة بخطوة
أنشئ تطبيق PHP واختر بيئة التشغيل
افتح قسم المنصة (Platform) في اللوحة، واختر PHP، ثم حدّد إصدار PHP 8 والخطة. تأتي بيئة التشغيل مزوّدة بالإضافات الشائعة التي تتوقعها تطبيقات PHP — PDO وmbstring وGD وOpenSSL وإضافة Redis — فلا تحتاج إلى فتح تذاكر دعم لتفعيل إضافة ما.
انقل شيفرتك إلى المنصة
استخدم مدير الملفات المدمج لرفع سريع، أو اربط مستودع Git/GitHub بحيث ينشر أي دفع (push) التطبيق تلقائيًا. في تطبيقات أطر العمل تضبط جذر المستند على مجلد public/ وتُعرّف خطوات البناء والترحيل مرة واحدة.
اربط قاعدة بيانات مُدارة وRedis
جهّز قاعدة بيانات MySQL مُدارة، وإن احتاج التطبيق إلى تخزين مؤقت أو طوابير أو جلسات، جهّز نسخة Redis مُدارة أيضًا. تُحقن قيم الاتصال في بيئة التشغيل كمتغيرات بيئة، فتبقى بيانات الاعتماد خارج ملف .env المُودَع في المستودع ويمكن تدويرها من اللوحة.
وجّه النطاق وأصدِر شهادة SSL التلقائية
اربط نطاقك أو نطاقًا فرعيًا بصيغة name.cdn.com.tr، وتتولى ميزة SSL التلقائية إصدار الشهادة وتجديدها للنطاق الأساسي وwww. تصل حركة المرور الآن إلى حافة cdn.com.tr أولًا، حيث يجري إنهاء SSL قبل توجيه الطلبات إلى بيئة تشغيل PHP لديك.
اضبط التخزين المؤقت وWAF وخطوات النشر
حدّد المسارات القابلة للتخزين المؤقت على الحافة وتلك التي تصل دومًا إلى PHP، وطبّق ملف تعريف WAF، وثبّت خط أنابيب النشر — مثل composer install وبناء الأصول وترحيلات قاعدة البيانات — بحيث يُنفّذ كل إصدار الخطوات نفسها وينتهي بعملية purge تلقائية.
أمثلة على السيناريوهات
يُنشر تطبيق Laravel من GitHub مع composer install والترحيلات، ويستخدم MySQL مُدارة وطابور Redis، ويُقدَّم خلف شهادات SSL التلقائية وWAF.
تُنقل بوابة قديمة بنظام إدارة محتوى مخصص إلى PHP 8 مع قاعدة بيانات مُدارة، وتوضع خلف WAF، وتُحدَّث مسارًا تلو الآخر دون توقّف.
تعمل واجهة API مكتوبة يدويًا بلغة PHP على بيئة التشغيل المُدارة مع Redis لحدود المعدل وحالة الجلسة، وتُتاح على نطاق مع إنهاء SSL على الحافة.
الأسئلة الشائعة
ما إضافات PHP المتوفرة في بيئة التشغيل؟
تأتي بيئة تشغيل PHP 8 مزوّدة بالإضافات التي تعتمد عليها التطبيقات النموذجية — PDO ومشغّلات MySQL، وmbstring، وGD لمعالجة الصور، وOpenSSL، وcURL، وإضافة Redis المستخدمة للتخزين المؤقت والجلسات والطوابير. ولأن مجموعة الإضافات قياسية، يُثبَّت Laravel وSymfony ومعظم حزم Composer دون بناء مخصص.
هل يمكنني تشغيل عامل طابور Laravel أو مهام مجدولة؟
نعم. يتوفر Redis كواجهة خلفية للطوابير، وتشغّل المنصة تطبيقك على بيئة تشغيل دائمة بدلًا من صندوق معزول لكل طلب، فتلائم المعالجة في الخلفية والمهام المجدولة هذا النموذج. تُعرّف الأوامر ضمن إعداد التطبيق بدلًا من تحرير crontab النظام على خادم كنت ستضطر لإدارته.
كيف تصل بيانات اعتماد قاعدة البيانات إلى ملف .env دون إيداع الأسرار؟
تُحقن تفاصيل اتصال قاعدة البيانات المُدارة وRedis في بيئة التشغيل. يقرؤها إطار عملك من البيئة كما يقرأ قيم .env أصلًا، فلا تُودِع المضيف أو المستخدم أو كلمة المرور في Git أبدًا، وتدوير كلمة المرور من اللوحة لا يتطلب تغيير الشيفرة.
تطبيقي مصمم لـ PHP 7 — هل سيعمل على PHP 8؟
تعمل معظم الشيفرات المُصانة على PHP 8 بتعديلات طفيفة، لكن PHP 8 أزال بعض السلوكيات المهجورة. النهج الصحيح هو جلب الشيفرة إلى المنصة، وتشغيلها على رابط مؤقت، وإصلاح التحذيرات المهجورة التي تجدها قبل تبديل النطاق — تمنحك بيئة التشغيل المُدارة مكانًا آمنًا لفعل ذلك بالضبط.
هل أضبط جذر المستند على public/؟
نعم. في Laravel وSymfony وأطر العمل المشابهة توجّه جذر الويب إلى مجلد public/ بحيث تبقى بقية شجرة التطبيق — بما فيها .env وvendor وstorage — خارج المسار المخدوم عبر الويب. كما تُدعم التطبيقات القديمة التي تُخدَم من مجلدها الأعلى؛ تضبط الجذر تبعًا لذلك.
كيف أتعامل مع رفع الملفات التي يجب أن تنجو من إعادة النشر؟
يمتلك التطبيق وحدة تخزين دائمة لبيانات المستخدم، وللتطبيقات كثيفة الوسائط يمكنك نقل الملفات المرفوعة إلى Object Storage وتقديمها عبر CDN بدلًا من بيئة التشغيل. يبقي هذا عمليات النشر سريعة وعديمة الحالة، ويعني أن إعادة نشر أو حدث توسّع لن يعرّض الملفات المرفوعة للخطر أبدًا.