Bloccato fuori dal mio forum dopo il ripristino

Ho riscontrato alcuni problemi durante il ripristino del mio backup a causa del download .tar di macOS, ma sono riuscito a farlo funzionare. Il sito è online su forum.imaginerio.org con i vecchi post e tutto il resto, ma non riesco ad accedere né con l’account admin che ho configurato durante il deploy né con le mie vecchie credenziali del forum. Nel mio browser sto attualmente ricevendo

Oops
Il software che alimenta questo forum di discussione ha riscontrato un problema imprevisto. Ci scusiamo per l'inconveniente.

Informazioni dettagliate sull'errore sono state registrate e generata una notifica automatica. Ci daremo un'occhiata.

Non è necessaria alcuna ulteriore azione. Tuttavia, se la condizione di errore persiste, è possibile fornire ulteriori dettagli, inclusi i passaggi per riprodurre l'errore, pubblicando un argomento di discussione nella categoria di feedback del sito.

ma si carica in una finestra privata. La connessione con Google restituisce Qualcosa è andato storto, forse questa email è già stata utilizzata, la connessione con Github restituisce l’errore sopra. Ho provato il link “Password dimenticata” ma non arriva nessuna email, mentre l’email di test inviata da discourse-doctor arriva con successo.

Ci sono log che posso controllare o altre operazioni da eseguire nel container in esecuzione?

Questa era precedentemente un’istanza ospitata da cui ho scaricato un backup e ora la sto ospitando da solo, non sono sicuro se possa essere correlato.

Dopo averci pensato un po’, sono giunto alla conclusione che è perché non ho mai configurato il login Google/Github sulla mia istanza self-hosted, qualcuno può confermare? Se sì, è fattibile tramite console?

Otterresti un errore diverso, non questo.

In realtà funziona per me:

così come github.

Ti consiglio di utilizzare il login backdoor dell’amministratore e quindi controllare /logs per maggiori dettagli sull’errore.

4 Mi Piace

Grazie Michael. Riesco ad arrivare allo stesso punto in cui sei arrivato tu, ma se provi effettivamente a creare un account ti dirà che qualcosa è andato storto e forse questa email è già registrata (cosa che non è). Ho provato il login backdoor e, sebbene dica ‘email inviata’, non arriva nulla nella mia casella di posta (di nuovo, l’email di test di discourse-doctor funziona). Ricordo di aver disattivato le email per i non membri del team per qualche motivo, ma l’email che sto usando è decisamente del team.

Non ho ancora annullato il mio abbonamento. Se questo può essere risolto con un account amministratore e configurazioni nuovi/diversi, pensi che il supporto clienti possa aiutarmi?

Podemos ajudá-lo com e-mail em um site hospedado, mas não em um auto-hospedado.

Você pode tentar usar rake admin:create do contêiner para criar uma nova conta de administrador e fazer login nela em vez disso.

3 Mi Piace

Questo forum è stato ripristinato da un sito ospitato, per il quale l’abbonamento è ancora attivo. Quello ospitato non è pubblicamente accessibile poiché utilizzo lo stesso dominio, ma suppongo sia ancora in esecuzione? Suggerisco questo basandomi sulla sensazione di essere bloccato a causa di una configurazione errata che potrebbe essere ripristinata, quindi esportando e ripristinando un nuovo backup.

Sembra che quasi abbia funzionato. Sono riuscito a creare l’account amministratore, ma tentando di accedere ricevo un ‘errore sconosciuto’ (e 500 sulla console). Ho provato a richiedere un link di accesso e l’email è arrivata correttamente, ma poi di nuovo:

Potrai controllare i log di Rails nel container (/shared/logs/rails) per i dettagli sull’errore.

1 Mi Piace

Trovato un sacco di questi in production.log:

Parameters: {"slug"=>"en-narratives-about", "topic_id"=>"96"}
Completed 500 Internal Server Error in 23ms (ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)
Started GET "/t/en-narratives-about/96.json" for 34.127.96.150 at 2025-01-24 19:47:25 +0000
Processing by TopicsController#show as JSON

Questo slug compare anche in nginx/access.log:

[24/Jan/2025:20:10:19 +0000] "forum.imaginerio.org" 179.210.195.226 "POST /message-bus/a6ddfc6d2e3c4937b5eaa52ea8fdce33/poll?dlp=t HTTP/2.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36" "-" 200 424 "https://forum.imaginerio.org/session/email-login/36ac7e1c52851f1b5c76894b04fd3c4d" 0.009 0.009 "-" "-" "-" "-" "-" "-" "-"
[24/Jan/2025:20:10:20 +0000] "forum.imaginerio.org" 34.127.96.150 "GET /t/en-narratives-about/96.json HTTP/1.1" "axios/0.21.1" "-" 500 295 "-" 0.041 0.041 "-" "-" "-" "-" "-" "-" "-"
[24/Jan/2025:20:10:23 +0000] "forum.imaginerio.org" 179.210.195.226 "POST /message-bus/d2157f777d0847eb882e0f68ab50a5f2/poll?dlp=t HTTP/2.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36" "-" 200 424 "https://forum.imaginerio.org/" 0.005 0.005 "-" "-" "-" "-" "-" "-" "-"
[24/Jan/2025:20:10:25 +0000] "forum.imaginerio.org" 34.127.96.150 "GET /t/en-narratives-about/96.json HTTP/1.1" "axios/0.21.1" "-" 500 295 "-" 0.043 0.043 "-" "-" "-" "-" "-" "-" "-"

Nient’altro di degno di nota, tranne forse la conferma per il mio admin:create in /log/var-log:

2025-01-24T19:20:57.703680+00:00 ip-172-26-4-15-app sudo: root : TTY=pts/1 ; PWD=/var/www/discourse ; USER=discourse ; COMMAND=/usr/local/bin/bundle exec bin/rake admin:create
2025-01-24T19:20:57.704316+00:00 ip-172-26-4-15-app sudo: pam_limits(sudo:session): Could not set limit for 'core' to soft=-1, hard=-1: Operation not permitted; uid=0,euid=0
2025-01-24T19:20:57.704421+00:00 ip-172-26-4-15-app sudo: pam_unix(sudo:session): session opened for user discourse(uid=1000) by (uid=0)
2025-01-24T19:21:59.096268+00:00 ip-172-26-4-15-app sudo: pam_unix(sudo:session): session closed for user discourse
2025-01-24T19:25:01.326841+00:00 ip-172-26-4-15-app CRON[116983]: pam_unix(cron:session): session opened for user root(uid=0) by (uid=0)
2025-01-24T19:25:01.340674+00:00 ip-172-26-4-15-app CRON[116983]: pam_unix(cron:session): session closed for user root

Navigando allo slug vedo un errore di non trovato:

{
  "errors": [
    "L'URL o la risorsa richiesta non è stata trovata."
  ],
  "error_type": "not_found",
  "extras": {
    "title": "Pagina non trovata",
    "html": "\n\n\n\n<div>\n  <h1 class=\"title\">Ops! Questa pagina non esiste o è privata.</h1>\n\n    <a href=\"/login\" class='btn btn-primary'>\n      <svg class=\"fa d-icon svg-icon svg-node\" aria-hidden=\"true\">\n        <svg id=\"user\" viewBox=\"0 0 448 512\">\n          <path d=\"M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l388.6 0c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304l-91.4 0z\"/>\n        </svg>\n      </svg>\nAccedi</a>\n\n</div>\n\n\n\n<div class=\"row page-not-found-topics\">\n    <div class=\"recent-topics\">\n      <h2 class=\"recent-topics-title\">Recente</h2>\n        <div class='not-found-topic'>\n          <a href=\"/t/topografia-do-rio-antigo-heightmap/152\">Topografia del fiume antico (Heightmap)</a><a class='badge-category__wrapper ' href='/c/imaginerio/9'><span data-category-id='9' style='--category-badge-color: #25AAE2; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Qui puoi parlare di imagineRio.'><span class='badge-category__name'>imagineRio</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/titulo-e-localizacao-nao-correspondem/149\">Titolo e posizione non corrispondono</a><a class='badge-category__wrapper ' href='/c/imaginerio/9'><span data-category-id='9' style='--category-badge-color: #25AAE2; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Qui puoi parlare di imagineRio.'><span class='badge-category__name'>imagineRio</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/imagens-que-nao-correspondem-a-localizacao-no-mapa/148\">Immagini non corrispondenti alla posizione sulla mappa</a><a class='badge-category__wrapper ' href='/c/features/12'><span data-category-id='12' style='--category-badge-color: #0088CC; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Vorresti più opzioni sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per suggerire un miglioramento.'><span class='badge-category__name'>Suggerisci miglioramento</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/problema-no-login/143\">Problema di accesso</a><a class='badge-category__wrapper ' href='/c/bugs/10'><span data-category-id='10' style='--category-badge-color: #0E76BD; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Hai riscontrato un problema sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per segnalare un problema.'><span class='badge-category__name'>Segnala problema</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/add-the-complete-collection-of-jean-baptiste-debret/134\">Aggiungi la collezione completa di Jean-Baptiste Debret</a><a class='badge-category__wrapper ' href='/c/features/12'><span data-category-id='12' style='--category-badge-color: #0088CC; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Vorresti più opzioni sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per suggerire un miglioramento.'><span class='badge-category__name'>Suggerisci miglioramento</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/publicacao-de-conteudo-do-youtube/131\">Pubblicazione di contenuti da YouTube</a><a class='badge-category__wrapper ' href='/c/features/12'><span data-category-id='12' style='--category-badge-color: #0088CC; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Vorresti più opzioni sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per suggerire un miglioramento.'><span class='badge-category__name'>Suggerisci miglioramento</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/bug-na-marcacao-nos-mapas/130\">Bug nella marcatura sulle mappe</a><a class='badge-category__wrapper ' href='/c/bugs/10'><span data-category-id='10' style='--category-badge-color: #0E76BD; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Hai riscontrato un problema sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per segnalare un problema.'><span class='badge-category__name'>Segnala problema</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/copiar-colar-a-posicao-do-mapa/129\">Copia/incolla la posizione della mappa</a><a class='badge-category__wrapper ' href='/c/features/12'><span data-category-id='12' style='--category-badge-color: #0088CC; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Vorresti più opzioni sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per suggerire un miglioramento.'><span class='badge-category__name'>Suggerisci miglioramento</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/technical-issue-with-image-server/128\">Problema tecnico con il server delle immagini</a><a class='badge-category__wrapper ' href='/c/bugs/10'><span data-category-id='10' style='--category-badge-color: #0E76BD; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Hai riscontrato un problema sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per segnalare un problema.'><span class='badge-category__name'>Segnala problema</span></span></a>\n        </div>\n        <div class='not-found-topic'>\n          <a href=\"/t/narrativas-problemas-de-acesso-a-plataforma/125\">Narrazioni: problemi di accesso alla piattaforma</a><a class='badge-category__wrapper ' href='/c/bugs/10'><span data-category-id='10' style='--category-badge-color: #0E76BD; --category-badge-text-color: #FFFFFF;' data-drop-close='true' class='badge-category ' title='Hai riscontrato un problema sulla nostra mappa? Crea un nuovo argomento e compila i dati richiesti per segnalare un problema.'><span class='badge-category__name'>Segnala problema</span></span></a>\n        </div>\n      <a href=\"/latest\" class=\"btn btn-default\">Altro…</a>\n    </div>\n</div>\n\n\n  <div class=\"row\">\n    <div class=\"page-not-found-search\">\n      <form action='/search' id='discourse-search'>\n        <label for=\"search-input\">Cerca in questo sito</label>\n        <input type=\"text\" id=\"search-input\" name=\"q\" value=\"en narratives about\">\n        <button class=\"btn btn-primary\">Cerca</button>\n      </form>\n    </div>\n  </div>\n\n  <script defer src=\"/assets/onpopstate-handler-1ea3e951679a33d36b6c5f2f8d98016e9908c4af9110736a24b159542c83a9b8.js\" data-discourse-entrypoint=\"onpopstate-handler\" nonce=\"bJfYSa08sEXVGC4MEMEU13WAq\">\n  </script>\n\n",
    "group": null
  }
}

Sì. C’è decisamente qualcosa che non va nella creazione dell’utente. Sembra che sarà difficile scoprirlo. Ma in quei log dovresti cercare i log che si verificano quando provi ad accedere. Stai cercando uno che abbia il percorso /login piuttosto che /t/en-narratives-about/96.json.

Se desideri supporto a pagamento per il tuo sito self-hosted, puoi contattarmi direttamente, sia tramite PM sia tramite le mie informazioni di contatto presenti nel mio profilo.

1 Mi Piace

Grazie per l’aiuto nella navigazione. Il mio tentativo di accesso dopo aver creato l’utente admin con rake admin:create appare come

Started GET "/session/passkey/challenge.json" for 179.210.195.226 at 2025-01-24 21:13:59 +0000
Processing by SessionController#passkey_challenge as JSON
Completed 200 OK in 4ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 2.0ms)
Started GET "/t/en-narratives-about/96.json" for 34.127.96.150 at 2025-01-24 21:14:00 +0000
Processing by TopicsController#show as JSON
  Parameters: {"slug"=>"en-narratives-about", "topic_id"=>"96"}
Completed 500 Internal Server Error in 35ms (ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.7ms)
Started POST "/session" for 179.210.195.226 at 2025-01-24 21:14:05 +0000
Processing by SessionController#create as */*
  Parameters: {"login"=>"martim", "password"=>"[FILTERED]", "second_factor_method"=>"1", "timezone"=>"America/Sao_Paulo"}
Started GET "/t/en-narratives-about/96.json" for 34.127.96.150 at 2025-01-24 21:14:06 +0000
Processing by TopicsController#show as JSON
  Parameters: {"slug"=>"en-narratives-about", "topic_id"=>"96"}
Completed 200 OK in 195ms (Views: 0.1ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 4.3ms)

Posso vedere anche i tuoi tentativi:

Started GET "/session/hp.json" for 174.50.213.142 at 2025-01-24 20:58:53 +0000
Processing by SessionController#get_honeypot_value as JSON
Completed 200 OK in 5ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)
Started GET "/u/check_username?username=Jay_Pfaffman&email=jay%40literatecomputing.com" for 174.50.213.142 at 2025-01-24 20:58:53 +0000
Processing by UsersController#check_username as JSON
  Parameters: {"username"=>"Jay_Pfaffman", "email"=>"jay@literatecomputing.com"}
Completed 200 OK in 4ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)

Prima di ciò, vedo occorrenze di

Started GET "/session/email-login/36ac7e1c52851f1b5c76894b04fd3c4d.json" for 31.186.166.197 at 2025-01-24 20:23:25 +0000
Processing by SessionController#email_login_info as JSON
  Parameters: {"token"=>"36ac7e1c52851f1b5c76894b04fd3c4d"}
Completed 200 OK in 6ms (Views: 0.1ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)

e

Started GET "/session/hp.json" for 174.50.213.142 at 2025-01-24 21:02:05 +0000
Processing by SessionController#get_honeypot_value as JSON
Completed 200 OK in 2ms (Views: 0.1ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)

Pensi che una nuova installazione + alcune configurazioni potrebbero aiutare qui? Ho ripristinato il backup non appena il forum è stato online.

Non sono sicuro di cosa si tratti. Hai configurato una passkey per il tuo utente? Hai l’autenticazione a due fattori sul tuo account? È richiesta?

Non lo so. Suppongo che potresti cancellare il tuo database e vedere se la creazione di account e gli accessi funzionano su una nuova installazione. Questo ti farebbe sapere se si tratta di un problema con la tua installazione o con il tuo database.

Qualcosa come

cd /var/discourse
./launcher stop app
rm -rf shared/standalone/postgres*
./launcher rebuild app

E poi vedere che puoi creare un account, ricevere email e che gli accessi funzionano.

A volte è necessario installare eventuali plugin che erano installati sul sistema da cui provieni.

hai controllato production_errors.log?

Sembrano essere vuoti.

Probabilmente proverò una nuova installazione domani, ora che ci ho preso la mano dovrebbe essere abbastanza semplice. Continuo a pensarci però:

Gli unici 500 che ho trovato nei log sono correlati ai GET di “/t/en-narratives-about/96.json”. Non c’è modo che stiano intralciando? Forse eliminarlo dal db in modo che non venga chiamato?

Capisco che la creazione dell’utente sia interrotta, ma l’admin creato con rake admin:create sembra funzionare…

Prova ad andare su https://yoursitedomain/u/admin-login e ad attivare la modalità sicura prima di inviare l’email. Questo disabiliterà tutti i plugin e ti permetterà di accedere in modo da poter correggere il tuo plugin. Funziona anche per oauth.

1 Mi Piace

Grazie, ho provato e ho ottenuto lo stesso popup di errore 500 come sopra… I log per questo tentativo sono

Started GET "/session/email-login/058db4bbc47396be096cf7bed508c23e?safe_mode=no_plugins,no_themes" for 179.210.195.226 at 2025-01-27 13:04:30 +0000
Processing by SessionController#email_login_info as HTML
  Parameters: {"safe_mode"=>"no_plugins,no_themes", "token"=>"058db4bbc47396be096cf7bed508c23e"}
  Rendered layout layouts/application.html.erb (Duration: 54.6ms | GC: 1.2ms)
Completed 200 OK in 62ms (Views: 56.0ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 1.2ms)
Started GET "/svg-sprite/forum.imaginerio.org/svg--ebd30ca654fdbd40604e7a7f5127b1bce16eb12b.js" for 179.210.195.226 at 2025-01-27 13:04:30 +0000
Processing by SvgSpriteController#show as */*
  Parameters: {"hostname"=>"forum.imaginerio.org", "theme_id"=>"", "version"=>"ebd30ca654fdbd40604e7a7f5127b1bce16eb12b"}
Completed 200 OK in 5ms (Views: 0.5ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)
Started GET "/session/email-login/058db4bbc47396be096cf7bed508c23e.json" for 179.210.195.226 at 2025-01-27 13:04:30 +0000
Processing by SessionController#email_login_info as JSON
  Parameters: {"token"=>"058db4bbc47396be096cf7bed508c23e"}
Completed 200 OK in 253ms (Views: 0.2ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.7ms)
Started GET "/session/csrf" for 179.210.195.226 at 2025-01-27 13:04:34 +0000
Processing by SessionController#csrf as JSON
Completed 200 OK in 5ms (Views: 1.1ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)
Started POST "/session/email-login/058db4bbc47396be096cf7bed508c23e" for 179.210.195.226 at 2025-01-27 13:04:34 +0000
Processing by SessionController#email_login as */*
  Parameters: {"second_factor_method"=>"1", "timezone"=>"America/Sao_Paulo", "token"=>"058db4bbc47396be096cf7bed508c23e"}
Completed 500 Internal Server Error in 182ms (ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 1.4ms)

Sembra che ciò che sta fallendo sia SessionController#email_login con “second_factor_method”=>“1”?

Ho appena provato e riesco a creare nuovi account con successo. Sembra che il ripristino del backup abbia danneggiato l’accesso, potrebbe essersi corrotto qualcosa nel mio .tar->.tar.gz? L’impostazione di OAuth prima del ripristino farebbe la differenza, o viene sovrascritto dal ripristino?

Hai abilitato l’impostazione di sistema che richiede il secondo fattore?

Ho Applica secondo fattore per l'autenticazione esterna attivo e Applica secondo fattore disattivato:

Il testo è un po’ confuso per me, ad essere sincero. Dice che questo richiederà agli utenti di utilizzare l’autenticazione a due fattori, ma anche che gli utenti che hanno l’autenticazione a due fattori abilitata saranno impediti di accedere utilizzando l’autenticazione esterna? Quindi, in sostanza, limita l’accesso agli account del forum e disabilita quelli esterni?

Sembra che l’abbia risolto. Avevo disabilitato le email per i non membri del team, cambiarlo tramite SiteSetting.disable_emails = \"no\" sembra aver risolto il problema! Grazie a tutti per il supporto, non sono ancora sicuro del perché questo stesse causando tutto il caos (ho ricevuto un’email quando ho creato un amministratore tramite console, e non sono sicuro del perché disabilitare le email avrebbe intaccato l’accesso di un utente registrato) ma ora va tutto bene :slight_smile:

2 Mi Piace