خطأ 500 عند النشر، خطأ في وقت تشغيل moment.tz

مرحباً، لقد واجهت مؤخرًا خطأ عند نشر موضوع على منتدى Discourse الخاص بي. لقد تعمقت في سجلات الأخطاء ووجدت هذا، التاريخ والوقت يتوافقان مع الوقت الذي حاولت فيه نشر الموضوع بشكل متكرر. كنت أتلقى رسالة خطأ 500 للمستخدم.

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

عندما أنقر على سجل الخطأ، يظهر ما يلي في قسم الإخراج:

JavaScript at addLocalDate (discourse/plugins/discourse-local-dates/lib/discourse-markdown/discourse-local-dates:24:29)
JavaScript at Object.date [as onMatch] (discourse/plugins/discourse-local-dates/lib/discourse-markdown/discourse-local-dates:44:7)
JavaScript at TextPostProcessRuler.applyRule (discourse-markdown-it/features/text-post-process:56:30)
JavaScript at textPostProcess (discourse-markdown-it/features/text-post-process:109:13)
JavaScript at replacer (discourse-markdown-it/features/text-post-process:122:44)
JavaScript at Object.textReplace (pretty-text/text-replace:62:23)
JavaScript at Array.<anonymous> (discourse-markdown-it/features/text-post-process:123:85)
JavaScript at Core.process (<anonymous>:2606:15)
JavaScript at MarkdownIt.parse (<anonymous>:6887:15)
JavaScript at MarkdownIt.render (<anonymous>:6902:38)
mini_racer (0.9.0) lib/mini_racer.rb:228:in `eval_unsafe'
mini_racer (0.9.0) lib/mini_racer.rb:228:in `block (2 levels) in eval'
mini_racer (0.9.0) lib/mini_racer.rb:369:in `timeout'
mini_racer (0.9.0) lib/mini_racer.rb:227:in `block in eval'
mini_racer (0.9.0) lib/mini_racer.rb:225:in `synchronize'
mini_racer (0.9.0) lib/mini_racer.rb:225:in `eval'
lib/pretty_text.rb:235:in `block in markdown'
lib/pretty_text.rb:681:in `block in protect'
lib/pretty_text.rb:681:in `synchronize'
lib/pretty_text.rb:681:in `protect'
lib/pretty_text.rb:173:in `markdown'
lib/pretty_text.rb:298:in `cook'
plugins/poll/lib/poll.rb:327:in `extract'
plugins/poll/lib/polls_validator.rb:15:in `validate_polls'
plugins/poll/plugin.rb:95:in `block (2 levels) in activate!'
lib/new_post_manager.rb:239:in `block in perform'
lib/new_post_manager.rb:238:in `any?'
lib/new_post_manager.rb:238:in `perform'
app/controllers/posts_controller.rb:215:in `create'
actionpack (7.0.8.4) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (7.0.8.4) lib/abstract_controller/base.rb:215:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/rendering.rb:165:in `process_action'
actionpack (7.0.8.4) lib/abstract_controller/callbacks.rb:234:in `block in process_action'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
app/controllers/application_controller.rb:424:in `block in with_resolved_locale'
i18n (1.14.5) lib/i18n.rb:351:in `with_locale'
app/controllers/application_controller.rb:424:in `with_resolved_locale'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:127:in `block in run_callbacks'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:138:in `run_callbacks'
actionpack (7.0.8.4) lib/abstract_controller/callbacks.rb:233:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/rescue.rb:23:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/instrumentation.rb:67:in `block in process_action'
activesupport (7.0.8.4) lib/active_support/notifications.rb:206:in `block in instrument'
activesupport (7.0.8.4) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport (7.0.8.4) lib/active_support/notifications.rb:206:in `instrument'
actionpack (7.0.8.4) lib/action_controller/metal/instrumentation.rb:66:in `process_action'
actionpack (7.0.8.4) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (7.0.8.4) lib/active_record/railties/controller_runtime.rb:27:in `process_action'
actionpack (7.0.8.4) lib/abstract_controller/base.rb:151:in `process'
actionview (7.0.8.4) lib/action_view/rendering.rb:39:in `process'
rack-mini-profiler (3.3.1) lib/mini_profiler/profiling_methods.rb:115:in `block in profile_method' 
actionpack (7.0.8.4) lib/action_controller/metal.rb:188:in `dispatch'
actionpack (7.0.8.4) lib/action_controller/metal.rb:251:in `dispatch'
actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:32:in `serve'
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:50:in `block in serve'
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (7.0.8.4) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (7.0.8.4) lib/action_dispatch/routing/route_set.rb:852:in `call'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
rack (2.2.9) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.9) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.9) lib/rack/head.rb:12:in `call'
actionpack (7.0.8.4) lib/action_dispatch/http/permissions_policy.rb:38:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:393:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
rack (2.2.9) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.9) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/cookies.rb:704:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
activesupport (7.0.8.4) lib/active_support/callbacks.rb:99:in `run_callbacks'
actionpack (7.0.8.4) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/debug_exceptions.rb:28:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/show_exceptions.rb:29:in `call'
logster (2.19.1) lib/logster/middleware/reporter.rb:40:in `call'
railties (7.0.8.4) lib/rails/rack/logger.rb:40:in `call_app'
railties (7.0.8.4) lib/rails/rack/logger.rb:27:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/request_id.rb:26:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.9) lib/rack/method_override.rb:24:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.9) lib/rack/sendfile.rb:110:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/host_authorization.rb:131:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:334:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:360:in `call'
actionpack (7.0.8.4) lib/action_dispatch/middleware/remote_ip.rb:93:in `call'
railties (7.0.8.4) lib/rails/engine.rb:530:in `call'
railties (7.0.8.4) lib/rails/railtie.rb:226:in `public_send'
railties (7.0.8.4) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.9) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.9) lib/rack/urlmap.rb:58:in `each'
rack (2.2.9) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'

هل يعرف أحد ماذا يعني هذا وكيف يمكنني إصلاحه؟ شكراً.

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

إعجابَين (2)

نعم هذا الخطأ مفاجئ، هل يمكنك تأكيد أي إصدار من Discourse تستخدمه من فضلك؟

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

نحن نستخدم version: latest-release
عندما واجهنا هذه المشكلة، كان إصدار discourse هو https://github.com/discourse/discourse/commits/v3.3.0.beta2
ولم نواجه هذه المشكلة بعد التحديث إلى الإصدار https://github.com/discourse/discourse/commits/v3.3.0.beta3

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

يبدو أن موقعي على الإصدار 3.3.0.beta4-dev. أفترض أن هذا ليس مخصصًا للإنتاج؟ أرى لاحقة dev.

من المفترض استخدامه في بيئة الإنتاج. المجتمعات التي تستضيفها Discourse تحصل أيضًا على إصدارات “dev” هذه.
يشير اللاحقة “dev” فقط إلى أن هذه ليست النسخة النهائية من 3.3.0-beta4

4 إعجابات

بمجرد صدور الإصدار النهائي من 3.3.0-beta4، سأحرص على التحديث والمحاولة مرة أخرى. يبدو أن هذا يحدث فقط في منشورات محددة تستخدم قالباً خاصاً، على الرغم من أننا لم نواجه أي مشاكل معه من قبل. يتكون فقط من أزرار \u003ckbd\u003e\u003c/kbd\u003e، و [details="Summary"][/details]، وصور. لا شيء تجريبي، فقط وظائف Discourse الأساسية.

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

لدي تحديث، تمكنت من العثور على السبب. إذا قمت بإدراج تاريخ ووقت مثل [date=2024-07-23 timezone="America/New_York"]/2024-07-23T04:00:00Z فسيؤدي ذلك إلى ظهور خطأ 500.

هل يعرف أحد حلاً؟ شكراً.

ما هو إصدار Discourse الذي تستخدمه؟ هل تعرف الالتزام؟ يمكنك العثور عليه في صفحة المصدر لمنتدى الخاص بك:

Screenshot 2024-07-24 at 09.11.04

هل يحدث هذا أيضًا في /safe-mode؟

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

مرحباً، بالنسبة لسؤالك عن الإصدار، فهو 3.3.0.beta5-dev. بالنسبة لسؤالك عن جانب الوضع الآمن، عندما أدخل الوضع الآمن، يختفي زر إدراج التاريخ/الوقت. أعتقد أن هذا يتعلق بمكون Discourse Calendar (and Event) الإضافي.

حقيقة ممتعة :discourse: - ميزة تاريخ الإدراج هي جزء من المكون الإضافي للتواريخ المحلية (Local Dates plugin)، والذي يأتي مجمّعًا مع Discourse (بالإضافة إلى مكونات أخرى مثل Discobot و Hide Details و Chat وما إلى ذلك). للأسف، نظرًا لكونه مكونًا إضافيًا، فإن الوضع الآمن no_plugins سيقوم بتعطيله تمامًا مثل المكونات الإضافية الأخرى المثبتة اختياريًا. :frowning:

هل هناك خيار للدخول في الوضع الآمن مع تعطيل المكونات الإضافية غير الرسمية فقط، بالإضافة إلى تعطيل السمات ومكونات السمات، والتي قد تستحق التجربة؟

3 إعجابات

للأسف، حتى مع تطبيق تلك الإعدادات، لا تزال نفس الرسالة تظهر.


image

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

أنا متأكد من أن هذا شيء في بيئتك. هل تعرف ما إذا كان بإمكان الآخرين في هذا المنتدى القيام بذلك أم أنك الوحيد الذي يعاني من هذا الخطأ؟

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

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

لقد سألت شخصًا آخر في المنتدى وقال أيضًا إنه تلقى “خطأ داخلي في الخادم”.

أتلقى هذا أيضًا في وحدة التحكم عند محاولة النشر.

ربما له علاقة؟

يمكنك تشغيل خطأ وقت التشغيل في discourse-local-dates إذا أدخلت منطقة زمنية خاطئة في date-range:

date يعمل مع منطقة زمنية خاطئة:
[date=2024-07-25 time=14:05:00 timezone="Europe/Berlinx"]
2024-07-25T14:05:00Z

date-range لا يعمل:

[date-range from=2024-07-25T15:00:00 to=2024-07-25T17:00:00 timezone="Europe/Berlinx"]
2024-07-25T15:00:00Z2024-07-25T17:00:00Z

من هنا فصاعدًا، لن يتم تحليل التواريخ الأخرى:
[date=2024-07-25 time=14:05:00 timezone="Europe/Berlin"]
2024-07-25T12:05:00Z

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

تم إغلاق هذا الموضوع تلقائيًا بعد 30 يومًا من آخر رد. لم يعد يُسمح بالردود الجديدة.