خطأ Oops

لقد أعيدت بناء موقعي، وعند فتح المتصفح ظهرت الرسالة التالية:

عفوًا
واجهت البرمجيات التي تشغل منتدى النقاش هذا مشكلة غير متوقعة. نعتذر عن الإزعاج.

تم تسجيل معلومات مفصلة حول الخطأ، وتم إنشاء إشعار تلقائي. سنقوم بفحصه.

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

أتذكر أنه قبل ظهور هذه المشكلة، قمت بالنقر على صفحة إعدادات إضافة الذكاء الاصطناعي.

بالنسبة لملف containers/app.yml، قمت فقط بإضافة التكوين في نهايته:

params:
  version: esr

الآن حاولت إعادة البناء عدة مرات، ومع كل تحديث تظهر رسالة الخطأ هذه.

هل واجه أحدكم هذه المشكلة من قبل؟

احذف التعديل من ملف app.yml الخاص بك

ثم نفذ الأمر ./launcher rebuild app

يجب أن يكون هناك خطأ في الصياغة في ملفك

بعد ذلك، أنا لست متخصصًا، ولا أعرف ما إذا كان ما فعلته في ملف app.yml صحيحًا، ولكن لإطلاق منتداك بأسرع وقت ممكن، احذف التعديل وقم بعمل rebuild.

شكرًا على إجابتك، لكن المشكلة لا تكمن في ملف app.yml على الأرجح، لأنني نجحت في بناء هذا الملف عدة مرات من قبل.

عند تشغيل الأوامر أدناه، استُعيدت الصفحة الرئيسية للموقع، لكن عند النقر على تسجيل الدخول، ظهر خطأ “Oops” مرة أخرى.

redis-cli flushall

sv restart unicorn

sv reload nginx

هل قمت بتخفيض إصدار موقعك من latest إلى esr؟ هذا قد يفسر هذا النوع من الأخطاء.

ربما يكون الأمر يتعلق بالعودة إلى إصدار أقدم. لقد أعيدت نشر هذا الخادم قبل بضعة أسابيع، وكنت أختبر ميزة تحديد الإصدار عند النشر، لكنني أعتقد الآن أن أفضل الممارسات هي استخدام إصدار الدعم الموسع (ESR). ثم واجهت هذه المشكلة المفاجئة.

لكن النظام كان يعمل بشكل طبيعي لعدة أسابيع، وفجأة بدأ يظهر خطأ.

كيف يمكن حل هذه المشكلة؟ هل يجب الترقية إلى أحدث إصدار فقط؟

للأسف، لا يتم دعم التراجع عن الإصدار. لذا، نعم، ستحتاج إما إلى استعادة نسخة احتياطية سابقة من الوقت الذي كنت فيه تشغّل إصدار ESR، أو ستحتاج إلى تشغيل latest حتى إصدار ESR التالي (يوليو).

هل تقصد مشكلة ناتجة عن تضارب بين البيانات والكود؟ هل الحل الوحيد هو العودة إلى إصدار الكود الذي يتوافق مع بياناتي؟

نعم، تمامًا. يتم تغيير مخطط قاعدة البيانات بانتظام. لذا، إذا كان مخطط قاعدة بياناتك قد تم تحديثه بالفعل إلى latest، فسيكون غير متوافق مع الكود الأقدم الموجود في ESR.

بمعنى، إذا قمت بتثبيت خادم جديد، فإن التثبيت الافتراضي القياسي هو أحدث إصدار، وبالتالي، إذا أردت نشر ESR في هذه الحالة، فقد يظهر هذا المشكلة.

أما إذا كان الخادم قديمًا، وكانت الإثارة عليه 3.5.0 أو ما شابه، ثم قمت بالترقية إلى ESR، فلن تكون هناك مشكلة، أليس كذلك؟

أو يمكنني حذف جميع البيانات ثم نشر إصدار ESR، ويجب أن يكون ذلك ممكنًا أيضًا.

نعم، كل ذلك صحيح :+1:

إعجاب واحد (1)