Ciao a tutti. Ho bisogno di aiuto per la risoluzione dei problemi. Per la seconda volta consecutiva, il mio certificato SSL Let’s Encrypt non si è rinnovato automaticamente. Leggendo i thread pertinenti qui, sono riuscito ogni volta a rinnovare il certificato rimuovendo quello vecchio e ricostruendo l’applicazione. Avevo l’impressione che farlo avrebbe causato il rinnovo automatico la volta successiva. Non è successo.
Non vedo alcuna prova di un lavoro cron in esecuzione da nessuna parte che tenti di rinnovare il certificato. Presumo che dovrei guardare nei vari posti sulla macchina host, piuttosto che all’interno del container Docker. Ho ragione? crontab -l dice “nessun crontab per root” e non vedo nulla in /etc/cron*.
Di conseguenza, non riesco a sentirmi sicuro se il mio server (1) non stia tentando di rinnovare il certificato o (2) ci stia provando e fallendo. Qualcuno è disposto a guidarmi attraverso la risoluzione di questo problema?
Sfortunatamente, dato che ho eliminato shared/standalone/{letsencrypt,ssl} per effettuare nuovamente il provisioning del certificato, non ho vecchi log da consultare. Come posso almeno verificare che il lavoro cron sia installato in modo da poter controllare i log la prossima volta che il sistema tenta di rinnovare il certificato?
La ringrazio molto, ma preferirei di gran lunga controllare le impostazioni per vedere se è probabile che avvenga il prossimo rinnovo. Non so come controllare queste impostazioni, quindi è questo l’aiuto che chiedo ora.
A quanto pare, dovrebbe esserci un’attività cron. Dov’è? Non ne vedo una elencata sul mio server. Non si tratta di un’attività cron, ma di un’attività pianificata in Rails?
Ho visto in /var/discourse/shared/standalone/letsencrypt/acme.sh.log (sul sistema host) che Discourse ha controllato il mio certificato SSL e la risposta è stata “È ancora valido”, quindi suppongo che sia la prova che Discourse tenterà di rinnovare il certificato in tempo.
Ora vorrei sapere come è configurata questa attività “cron”? Si tratta davvero di un’attività cron a livello Linux o semplicemente di un’attività pianificata ricorrente in Rails che utilizza qualcosa come whenever? È qualcosa che posso esaminare e controllare senza guardare il codice sorgente? Potrei trovarlo usando la console Rails o qualunque cosa sia nel 2026? (Non lavoro in Rails da molto tempo.)
Oh, ehi, ho finalmente imparato che questo difetto era dovuto a una scorciatoia magica non documentata, non molto chiara, evidentemente inaspettata: “Se inizia con /, allora deve essere un’espressione regolare (regex)”. Non capisco ancora tutto il contesto, ma sembra essere questo.
Questa è la cultura del Duck Typing: meravigliosa flessibilità con il rischio che, se non scrivi le cose, i client avranno una sorpresa.
Sembra saggio rafforzare Pups::ReplaceCommand per verificare più attentamente se to assomiglia a un’espressione regolare o meno. O qualunque cosa stia facendo che presuppone che debba fare eval() di qualcosa invece di trattarlo come testo di sostituzione.
Presumo che questo rientri nella categoria dei Lavori di Pulizia Che Nessuno Ha Tempo Né Energia Per Fare? Se qualcuno potesse indicarmi alcuni esempi utili di come dovrebbe comportarsi ReplaceCommand, forse potrei dedicargli un po’ di tempo ed energia.
Almeno ho un’idea migliore di cosa stia succedendo, ma quella conoscenza ha già iniziato a decadere prima ancora che finissi di scrivere questa frase.