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

قارن الإصدارات والإضافات المطلوبة

راجع إصدار اللغة وإضافاتها واعتماديات المشروع ممكن جهازك يدعم صيغة أحدث من إصدار الخادم أو فيه إضافة PHP ناقصة استخدم توثيق إصدار المشروع نفسه مش أول شرح تلاقيه

الأوامر دي للقراءة وبتساعدك تجمع معلومات في بيئة PHP و Node حسب الأدوات المستخدمة عندك

php -v
php -m
node --version
npm --version

راجع اسم الملف بحروفه كاملة

بعض أنظمة الملفات بتميز بين الحروف الكبيرة والصغيرة فملف اسمه Logo.png مش لازم يتطابق مع مسار مكتوب logo.png نفس الفكرة تنطبق على أسماء ملفات الكود والاستيراد

اختار تسمية ثابتة وراجع الاسم المحفوظ في Git نفسه ومتكتفيش إن الملف اتفتح على جهازك

Actual file: images/Logo.png
Requested path: images/logo.png

المسار المحلي مش هو رابط الموقع

مسار زي C:/projects/site/images/logo.png يخص جهازك ومش عنوان صورة يقدر متصفح الزائر يطلبه استخدم نظام توليد الروابط أو إدارة الأصول في مشروعك وراجع لو التطبيق منشور داخل مسار فرعي

الإعدادات الخاصة بكل بيئة

اسم قاعدة البيانات وعنوان التطبيق وطريقة البريد والتخزين ممكن يختلفوا بين اللوكال والخادم راجع القيم المطلوبة من غير نسخ أسرار بيئة لبيئة بشكل عشوائي

في Laravel بعد تخزين الإعدادات مؤقتا لازم تتعامل مع config بالطريقة الموصى بيها ومتستخدمش env في كود التطبيق خارج ملفات الإعدادات على أساس إنه هيفضل يقرأ ملف البيئة مباشرة

ملفات المصدر غير ملفات البناء

لو المشروع بيستخدم أداة بناء فالخادم محتاج ناتج البناء المطلوب مش ملفات CSS و JavaScript المصدر فقط تأكد إن الإصدار المرفوع فيه Manifest والملفات اللي بيشير ليها

احتفظ بملف القفل للاعتماديات واستخدم تثبيت مناسب ليه علشان متبنيش الإصدار باعتماديات مختلفة عن اللي اختبرتها ومتنسخش node_modules بين أنظمة مختلفة كحل سريع

راجع صلاحيات الكتابة ومكان الجذر العام

التطبيق ممكن يحتاج يكتب سجلات أو ملفات مؤقتة في مسارات محددة اديله الصلاحيات المطلوبة هناك بدل فتح صلاحيات المشروع كله للجميع

في Laravel جذر الويب لازم يشير لمجلد public مش لجذر المشروع اللي فيه الإعدادات والملفات الخاصة

شوف أول طلب فشل

لو الصفحة نفسها فتحت لكن الشكل ناقص افتح Network وشوف ملفات CSS و JavaScript هل رجعت 404 ولو الصفحة رجعت 500 راجع سجل التطبيق في نفس وقت الطلب

متفعلش عرض التفاصيل الداخلية لكل الزوار علشان تشخص مشكلة وبعد الإصلاح جرب من جلسة جديدة ومن رابط مباشر مش بس الصفحة الرئيسية

اعمل قائمة تحقق خاصة بمشروعك

سجل الإصدارات المطلوبة وخطوات البناء والمسارات القابلة للكتابة وطريقة تحديث الإعدادات وخطة الرجوع لإصدار سابق بعد كده النشر يبقى خطوات قابلة للتكرار بدل تجربة مختلفة كل مرة

مصادر للتوسع