Dossier workbox manquant dans public/javascript ?

Salut,\n\nen enquêtant sur des pannes étranges que nous constatons sur nos forums, j’ai également vérifié les journaux nginx dans le conteneur de l’application. Je ne les avais pas vérifiés depuis un moment, donc je ne peux pas dire s’ils sont là depuis longtemps, mais je vois des erreurs concernant des fichiers Javascript manquants dans un répertoire qui n’existe pas du tout dans mon installation.\n\n\n```\n"/var/www/discourse/public/javascripts/workbox/workbox-core.prod.js" \n"/var/www/discourse/public/javascripts/workbox/workbox-cacheable-response.prod.js" \n"/var/www/discourse/public/javascripts/workbox/workbox-routing.prod.js" \n"/var/www/discourse/public/javascripts/workbox/workbox-strategies.prod.js" \n"/var/www/discourse/public/javascripts/workbox/workbox-sw.js"\n````\n\nCe ne sont que quelques exemples. Je ne les ai pas trouvés non plus sur GitHub et je me demandais ce qui causait ces problèmes. Je serais plus à l’aise si les journaux d’erreurs n’étaient pas spammés :-)\n\nDes idées ?\n\nEDIT : Je fais tourner la version 3.2.0.beta1 et je vois également ces fichiers manquants dans la console du navigateur…

Workbox semble être lié à la mise en cache, je pense.

Quand avez-vous mis à jour pour la dernière fois ? Il pourrait y avoir un bug à ce sujet, mais je pense que nous aurons besoin de plus d’informations.

1 « J'aime »

Je n’ai mis à jour que la veille de ma publication.

D’après mes recherches, cela semble avoir un rapport avec les PWA et doit être recherché avec les navigateurs Chrome/Chromium.

De quelles informations supplémentaires avez-vous besoin ?

Nous voyons toujours cela 9 mois plus tard et je n’en trouve toujours pas beaucoup d’informations. Je ne sais pas si personne ne consulte ses journaux d’erreurs nginx ou si cela ne les intéresse pas.

Quelqu’un a-t-il une idée de ce qui se passe et si cela pourrait causer des problèmes ou non ?

Je traque des problèmes 520/429 qui ne semblent pas directement liés à cela, mais cela me dérange toujours de voir ces erreurs encore et encore. Cela pourrait-il être des problèmes de cloudflare essayant toujours de charger d’anciens fichiers de constructions précédentes ? Ou des caches de navigateur ?

Étant donné que workbox a été abandonné comme dépendance il y a 2 mois et que ce n’est pas un problème qui affecte les sites à jour, je recommande de mettre à jour votre site.

1 « J'aime »

Je suis sur la version 3.3.0beta2 - Je ne pense pas qu’il y ait quoi que ce soit que je puisse mettre à jour.

1 « J'aime »

Tu n’es pas seul @helmi
J’ai eu des problèmes en passant de 3.2.5 à 3.3.0 (énormément de 502, 429, etc.) et j’ai dû revenir à 3.2.5.

Récemment, j’ai essayé de mettre à niveau vers 3.3.1 en espérant que les choses s’amélioreraient. Elles se sont améliorées… d’une certaine manière. Juste une pléthore de 502 pour tous les utilisateurs.

J’ai décidé de faire confiance au test-passed et je suis maintenant sur 3.4.0.beta3-dev ( 2099c33fa7 ) et voici ce que les logs d’erreurs nginx affichent de temps en temps.

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: ""

Je ne sais toujours pas ce qui cause le 502 car la VM est une 8 cœurs, 32 Go de RAM avec un Nvme de 500 Go.
Nous avons opté pour une grosse VM car notre communauté compte environ 450 utilisateurs actifs, 585k sujets et 21,5 millions de messages.

Il semble que notre installation ait également ce problème - depuis la mise à jour de la version 3.2.x à la version 3.3.x, nous avons des vagues de 502 lors de la publication, les derniers messages ne se mettent pas à jour et des problèmes similaires.

Il semble que toutes les x heures (heures ? incertain) un script d’arrière-plan plante (?) et crée ces problèmes.

edit : je n’avais pas vu que notre technicien avait déjà posté :sweat_smile: ce qu’il a dit

Nous recevons une vague d’erreurs similaire toutes les quelques heures :

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"

Dans ce cas, c’est avec public/assets, mais nous avons aussi des entrées de journal pour 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.

Le chemin a-t-il changé avec une version ? C’est probablement lorsque le cache du navigateur n’est pas correctement vidé, respectivement que l’actif n’est pas invalidé. Ou, plus probablement, ce sont des bots stupides qui continuent de scanner les ressources qu’ils ont trouvées une fois. Je veux dire que nous avons des milliers de visiteurs et des douzaines de contributeurs entre deux ensembles de journaux, donc cela ne semble pas être un problème général.

Dans notre cas, l’accès se fait via un proxy à l’extérieur du conteneur et un socket UNIX, donc pas d’adresses IP clientes visibles pour vérifier. Pour 77.208.167.253, je n’ai pas pu trouver d’informations pertinentes, qu’il s’agisse d’un bot ou non.

Quelle version utilisez-vous ?

3.5.0.beta5-dev, qui ne sert plus ces fichiers, ni un frontend à jour les demandant. Comme mentionné, soit un cache/frontend obsolète (ce qui ne devrait généralement pas se produire avec les documents HTML dynamiques), soit des bots, problème du client dans tous les cas.

1 « J'aime »