هل MISSING workbox directory في public/javascript؟

مرحباً،

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

"/var/www/discourse/public/javascripts/workbox/workbox-core.prod.js"
"/var/www/discourse/public/javascripts/workbox/workbox-cacheable-response.prod.js"
"/var/www/discourse/public/javascripts/workbox/workbox-routing.prod.js"
"/var/www/discourse/public/javascripts/workbox/workbox-strategies.prod.js"
"/var/www/discourse/public/javascripts/workbox/workbox-sw.js"

هذه مجرد أمثلة. لم أتمكن من العثور عليها على github أيضًا وتساءلت عما يسبب هذه المشكلات. سأشعر براحة أكبر مع عدم إغراق سجلات الأخطاء :slight_smile:

أي فكرة؟

تحرير: أنا أشغل الإصدار 3.2.0.beta1 بالمناسبة، ويمكنني أيضًا رؤية هذه الملفات المفقودة في وحدة تحكم المتصفح…

يبدو أن Workbox تتعلق بالتخزين المؤقت، على ما أعتقد.

متى قمت بالترقية مؤخرًا؟ قد تكون هناك بعض الأخطاء المتعلقة بذلك، ولكن أعتقد أننا قد نحتاج إلى مزيد من المعلومات.

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

لقد قمت بالتحديث قبل يوم واحد فقط من النشر.
وفقًا لعملي البحثي، يبدو أن الأمر يتعلق بـ PWA ويجب البحث عنه باستخدام متصفحات Chrome/Chromium.
ما هي المعلومات الإضافية التي تحتاجها؟

لا نزال نرى هذا بعد 9 أشهر ولا أزال لا أجد الكثير عنه. لست متأكدًا مما إذا كان لا أحد ينظر إلى سجلات أخطاء nginx الخاصة بهم أو لا يهتمون بها.\n\nهل لدى أي شخص فكرة عما يحدث وما إذا كان هذا قد يسبب مشاكل أم لا؟\n\nأنا أبحث عن بعض مشاكل 520/429 التي لا تبدو مرتبطة مباشرة بذلك ولكنها لا تزال تزعجني رؤية هذه الأخطاء مرارًا وتكرارًا. هل يمكن أن تكون هذه بعض مشاكل cloudflare التي لا تزال تحاول تحميل الملفات القديمة من الإصدارات السابقة؟ أو ذاكرة التخزين المؤقت للمتصفح؟

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

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

أنا على الإصدار 3.3.0beta2 - لا أعتقد أن هناك أي شيء يمكنني التحديث إليه.

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

لست وحدك يا @helmi
لقد واجهت مشاكل في الانتقال من 3.2.5 إلى 3.3.0 (الكثير من 502، 429، إلخ) واضطررت إلى الرجوع إلى 3.2.5.

مؤخرًا حاولت الترقية مرة أخرى إلى 3.3.1 على أمل أن تتحسن الأمور. لقد تحسنت… بطريقة ما. مجرد وفرة من 502 لجميع المستخدمين.

قررت أن أذهب بكل شيء وأثق في test-passed وأنا الآن على 3.4.0.beta3-dev ( 2099c33fa7 ) وهذا ما تسجل سجلات أخطاء nginx بين الحين والآخر.

2024/10/08 21:44:15 [error] 79#79: *16810 open() "/var/www/discourse/public/assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-routing.prod.js" failed (2: No such file or directory), client: 70.79.108.71, server: _, request: "GET /assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-routing.prod.js HTTP/2.0", host: "netgamers.it", referrer: "https://netgamers.it/service-worker.js"
2024/10/08 21:45:22 [error] 75#75: *17175 open() "/var/www/discourse/public/assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-core.prod.js" failed (2: No such file or directory), client: 216.128.26.206, server: _, request: "GET /assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-core.prod.js HTTP/2.0", host: "netgamers.it", referrer: "https://netgamers.it/service-worker.js"
2024/10/08 21:47:50 [error] 74#74: *17968 open() "/var/www/discourse/public/assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-core.prod.js" failed (2: No such file or directory), client: 77.208.167.253, server: _, request: "GET /assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-core.prod.js HTTP/2.0", host: "netgamers.it", referrer: ""
2024/10/08 21:47:51 [error] 74#74: *17981 open() "/var/www/discourse/public/assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-cacheable-response.prod.js" failed (2: No such file or directory), client: 77.208.167.253, server: _, request: "GET /assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-cacheable-response.prod.js HTTP/2.0", host: "netgamers.it", referrer: ""
2024/10/08 21:47:51 [error] 74#74: *17982 open() "/var/www/discourse/public/assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-sw.js" failed (2: No such file or directory), client: 77.208.167.253, server: _, request: "GET /assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-sw.js HTTP/2.0", host: "netgamers.it", referrer: ""
2024/10/08 21:47:51 [error] 74#74: *17983 open() "/var/www/discourse/public/assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-expiration.prod.js" failed (2: No such file or directory), client: 77.208.167.253, server: _, request: "GET /assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-expiration.prod.js HTTP/2.0", host: "netgamers.it", referrer: ""
2024/10/08 21:47:51 [error] 77#77: *17984 open() "/var/www/discourse/public/assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-routing.prod.js" failed (2: No such file or directory), client: 77.208.167.253, server: _, request: "GET /assets/workbox-9b5674ca0ecb89bae1fa6f4b09a18f12/workbox-routing.prod.js HTTP/2.0", host: "netgamers.it", referrer: ""

لا أزال لا أعرف ما الذي يسبب الـ 502 حيث أن الجهاز الافتراضي يحتوي على 8 أنوية، و 32 جيجابايت من ذاكرة الوصول العشوائي (RAM) مع قرص Nvme بسعة 500 جيجابايت.
لقد اخترنا جهازًا افتراضيًا كبيرًا لأن مجتمعنا يضم حوالي 450 مستخدمًا نشطًا، و 585 ألف موضوع، و 21.5 مليون مشاركة.

يبدو أن تثبيتنا يعاني أيضًا من هذه المشكلة - منذ التحديث من 3.2.x إلى 3.3.x، واجهنا موجات من أخطاء 502 عند النشر، وعدم تحديث أحدث المشاركات ومشكلات مماثلة.

يبدو أنه كل x مرة (ساعات؟ غير متأكد) هناك نص برمجي في الخلفية يخرج عن الخطأ (?) ويخلق هذه المشكلات.

تعديل: لم أر أن مسؤول التقنية لدينا قد نشر بالفعل :sweat_smile: ما قاله

نحصل على موجة مماثلة من الأخطاء كل بضع ساعات:

2025/05/19 16:48:10 [error] 63#63: *1738520 open() “/var/www/discourse/public/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-core.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-core.prod.js HTTP/1.1”, host: “XXXX”
2025/05/19 16:48:10 [error] 63#63: *1738520 open() “/var/www/discourse/public/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-routing.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-routing.prod.js HTTP/1.1”, host: “XXXX”
2025/05/19 16:48:10 [error] 63#63: *1738520 open() “/var/www/discourse/public/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-expiration.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-expiration.prod.js HTTP/1.1”, host: “XXXX”
2025/05/19 16:48:10 [error] 63#63: *1738520 open() “/var/www/discourse/public/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-sw.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-sw.js HTTP/1.1”, host: “XXXX”
2025/05/19 16:48:10 [error] 63#63: *1738520 open() “/var/www/discourse/public/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-cacheable-response.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-cacheable-response.prod.js HTTP/1.1”, host: “XXXX”
2025/05/19 16:48:10 [error] 63#63: *1738520 open() “/var/www/discourse/public/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-strategies.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/assets/workbox-77b0e3e0dd4773bcd6c7e74f302f7c69/workbox-strategies.prod.js HTTP/1.1”, host: “XXXX”

في هذه الحالة، يكون الأمر مع public/assets، ولكن لدينا أيضًا إدخالات سجل لـ public/javascript:

2025/05/12 18:00:39 [error] 78023#78023: *701261 open() “/var/www/discourse/public/javascripts/workbox/workbox-sw.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/javascripts/workbox/workbox-sw.js HTTP/1.1”, host: “XXXX”
2025/05/12 18:00:39 [error] 78023#78023: *701261 open() “/var/www/discourse/public/javascripts/workbox/workbox-routing.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/javascripts/workbox/workbox-routing.prod.js HTTP/1.1”, host: “XXXX”
2025/05/12 18:00:39 [error] 78023#78023: *701261 open() “/var/www/discourse/public/javascripts/workbox/workbox-cacheable-response.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/javascripts/workbox/workbox-cacheable-response.prod.js HTTP/1.1”, host: “XXXX”
2025/05/12 18:00:39 [error] 78023#78023: *701261 open() “/var/www/discourse/public/javascripts/workbox/workbox-strategies.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/javascripts/workbox/workbox-strategies.prod.js HTTP/1.1”, host: “XXXX”
2025/05/12 18:00:39 [error] 78023#78023: *701261 open() “/var/www/discourse/public/javascripts/workbox/workbox-core.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/javascripts/workbox/workbox-core.prod.js HTTP/1.1”, host: “XXXX”
2025/05/12 18:00:39 [error] 78023#78023: *701261 open() “/var/www/discourse/public/javascripts/workbox/workbox-expiration.prod.js” failed (2: No such file or directory), client: unix:, server: _, request: “GET /forum/javascripts/workbox/workbox-expiration.prod.js HTTP/1.

هل تغير المسار مع بعض الإصدارات؟ من المحتمل أن يكون ذلك عندما لا يتم مسح ذاكرة التخزين المؤقت للمتصفح بشكل صحيح، أو عدم صلاحية الأصول. أو، ربما الأرجح، أنها بعض الروبوتات الغبية التي تستمر في البحث عن الموارد التي وجدتها ذات مرة. أعني أن لدينا آلاف الزوار والعشرات من الناشرين بين مجموعتين من السجلات، لذلك لا يبدو أنها مشكلة عامة.

في حالتنا، يتم الوصول عبر وكيل خارج الحاوية ومقبس UNIX، وبالتالي لا توجد عناوين IP للعملاء مرئية للتحقق. بالنسبة لـ 77.208.167.253، لم أتمكن من العثور على أي معلومات ذات صلة، سواء كانت روبوتًا أم لا.

ما الإصدار الذي تستخدمه؟

3.5.0.beta5-dev، التي لم تعد تقدم هذه الملفات، ولا يطلبها واجهة أمامية محدثة. كما ذُكر، إما ذاكرة تخزين مؤقت/واجهة أمامية قديمة (والتي لا ينبغي أن تحدث عادةً مع المستندات HTML الديناميكية) أو روبوتات، مشكلة في العميل في كل الأحوال.

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