وظيفة إدارة Discourse غير قابلة للوصول فجأة

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

عند محاولة الدخول إلى منطقة الإدارة عبر /admin، يظهر لي هذا:

لطالما تمكنت من الوصول إلى هذه المنطقة بشكل صحيح حتى اليوم. جربت ذلك في متصفحين مختلفين.

ردّي الأول سيكون التحقق مما إذا كنت بحاجة إلى تحديث… لكنني لا أستطيع الوصول إليه!

أي مساعدة مُقدَّرة.

إذا كان هناك مسؤول آخر، فمن المرجح أنه أزالك من صفة المسؤول.

شكرًا على ردك، @itsbhanusharma. لا يبدو أن هذا هو الحال. أنا الشخص الوحيد الذي يقوم بأي شيء في لوحة التحكم، وكل الأشخاص الآخرين الذين يتمتعون بصلاحيات المسؤول محظورون أيضًا. (لقد تحققت للتو.)

قمنا بتشغيل التحديث الأسبوع الماضي؛ أتساءل عما إذا كان قد فشل شيء ما. عادةً ما أتحقق من ذلك في لوحة التحكم؛ هل هناك طريقة للتحديث يدويًا عن طريق الاتصال عبر SSH بالخادم؟

قد تبدأ بالوضع الآمن: https://discuss.uplift.us.us/safe-mode

لكن يُفضل أن تبدأ بفحص الإضافات (plugins) لديك.

هل لديك صلاحيات إدارية أخرى، مثل الصلاحية على المواضيع أو المنشورات؟

إذا قمت بالاتصال بخادمك عبر SSH، فيمكنك التحقق من صلاحيات المستخدم الإداري. على سبيل المثال، على خادمي:

root@discourse-docker:~# /var/discourse/launcher enter app
root@discourse-docker-app:/var/www/discourse# rails c
[1] pry(main)> User.find_by(username: 'supermathie').admin?
=> true

إذا أردت الحصول على قائمة المدراء، يمكنك استخدام الأمر التالي:

[2] pry(main)> User.real.where(admin: true).pluck :username
=> ["supermathie"]

هل ترى نفسك مدرجًا كمسؤول في /about؟

شكرًا للجميع على الاقتراحات!

  • الوضع الآمن لا يساعد؛ ولم نضف أي إضافة منذ فترة طويلة، إن لم نقل مطلقًا.
  • دخلت بناءً على توصية من @supermathie؛ لا يزال جميعنا مسؤولين. كما أننا مذكورون في /about، كما اقترح @RGJ.

أشك في أن هذه مشكلة تتعلق بصلاحيات المسؤول، لأننا لا نستطيع حتى النقر على قائمة السندويش؛ لا تظهر أي قائمة عند النقر عليها. المسؤول ليس العنصر الوحيد في تلك القائمة.

أشك شخصيًا في أن هناك خطأ ما حدث في آخر تحديث، لكنني لست متأكدًا من كيفية إعادة إجراء التحديث بأمان من سطر الأوامر.

قم بنسخ احتياطي:

root@discourse-docker-app:/# discourse backup
Starting backup...
…
[SUCCESS]
Backup done.
Output file is in: /var/www/discourse/public/backups/default/discourse-2020-01-20-163535-v20190603134013.tar.gz

ارجع إلى المضيف

انسخ النسخة الاحتياطية إلى مكان ما:

root@discourse-docker:~# cp /var/discourse/shared/standalone/backups/default/discourse-2020-01-20-163535-v20190603134013.tar.gz ~

ابدأ عملية إعادة البناء:

root@discourse-docker:~# /var/discourse/launcher rebuild app

شكرًا لك، @supermathie! لقد تم حل المشكلة، مهما كانت. قائمة السندويشات تعمل الآن مرة أخرى.