Avatar di sistema mancante dopo la migrazione a s3

Un paio di settimane fa abbiamo migrato dall’archiviazione locale a S3. I post e le avatar degli utenti sono stati migrati con successo, tranne l’avatar di sistema personalizzato.

Sembra che la riscrittura dell’URL abbia fallito, poiché S3_CDN_URL viene aggiunto dopo l’URL del forum.

Non ho ancora controllato nulla nel database, ma sembra che “https:{S3_URL}” sia l’URL globale relativo per l’avatar?

https://forum.tosdr.org/https://tosdr-forum.s3.eu-west-2.jbcdn.net/original/1X/3662711e5030823983d25ac319ce6b9a7ad030e6.png

Nota che questo è accaduto solo con l’avatar di sistema: il file esiste anche su S3, è solo l’URL relativo che presenta un problema.

Anche la modifica degli avatar non funziona. Gravatar presenta lo stesso problema, così come le immagini con le lettere.

Esiste una soluzione? Nota: abbiamo già reinstallato il forum su un backup più vecchio e migrato nuovamente il sito.

Ho controllato il database e tutti gli upload erano perfettamente a posto. (L’upload dell’avatar in questione era valido)

Potrebbe essere in qualche modo legato a questa riga?

s3_cdn_url è presente, non riesco a spiegarla in nessun altro modo.

Non sembra aggiornare nemmeno gli avatar, indipendentemente da un 200 OK

Started PUT "/u/system/preferences/avatar/pick" for 87.78.131.160 at 2021-04-10 12:55:46 +0000
Processing by UsersController#pick_avatar as */*
  Parameters: {"upload_id"=>"", "type"=>"system", "username"=>"system"}
Completed 200 OK in 15ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 4976)
Started PUT "/u/system/preferences/avatar/pick" for 87.78.131.160 at 2021-04-10 12:55:02 +0000
Processing by UsersController#pick_avatar as */*
  Parameters: {"upload_id"=>"1", "type"=>"gravatar", "username"=>"system"}
Completed 200 OK in 15ms (Views: 0.2ms | ActiveRecord: 0.0ms | Allocations: 5061)
Started PUT "/u/system/preferences/avatar/pick" for 87.78.131.160 at 2021-04-10 12:54:13 +0000
Processing by UsersController#pick_avatar as */*
  Parameters: {"upload_id"=>"695", "type"=>"uploaded", "username"=>"system"}
Completed 200 OK in 17ms (Views: 0.2ms | ActiveRecord: 0.0ms | Allocations: 4982)

Tutti i casi sopra riportano alla query verso l’URL base non valido:

Started GET "/u/system/preferences/https://tosdr-forum.s3.eu-west-2.jbcdn.net/original/1X/3662711e5030823983d25ac319ce6b9a7ad030e6.png" for 87.78.131.160 at 2021-04-10 12:54:15 +0000
Processing by UserBadgesController#username as JSON
  Parameters: {"username"=>"system"}
ActionController::RoutingError (No route matches [GET] "/u/system/preferences/https:/tosdr-forum.s3.eu-west-2.jbcdn.net/original/1X/3662711e5030823983d25ac319ce6b9a7ad030e6.png")
config/initializers/100-quiet_logger.rb:23:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
lib/middleware/enforce_hostname.rb:23:in `call'
lib/middleware/request_tracker.rb:177:in `call'
  Rendering exceptions/not_found.html.erb within layouts/no_ember
  Rendered exceptions/not_found.html.erb within layouts/no_ember (Duration: 0.3ms | Allocations: 105)
  Rendered layouts/_head.html.erb (Duration: 1.2ms | Allocations: 262)
  Rendered common/_discourse_stylesheet.html.erb (Duration: 3.5ms | Allocations: 1094)
Completed 200 OK in 19ms (Views: 0.2ms | ActiveRecord: 0.0ms | Allocations: 4961)