Questa è una guida how-to sulle impostazioni del sito nascoste, su come abilitarle e sul perchÊ potresti volerle modificare.
Livello utente richiesto: Amministratore
Importante: è richiesto lâaccesso alla console per alcuni passaggi.
In Discourse, le impostazioni del sito nascoste si riferiscono a opzioni di configurazione che non sono facilmente visibili o accessibili tramite lâinterfaccia standard della dashboard di amministrazione. Queste impostazioni fanno parte della configurazione backend che può controllare varie funzionalitĂ avanzate o potenzialmente di impatto del sito.
Queste impostazioni nascoste sono dotate di valori predefiniti preconfigurati, che sono impostati per garantire prestazioni e sicurezza ottimali basate su casi dâuso comuni e best practice.
Le impostazioni nascoste sono celate dallâinterfaccia di impostazioni predefinita per prevenire configurazioni errate accidentali da parte di amministratori che potrebbero non comprenderne appieno le implicazioni. Sono destinate a:
- Amministratori che hanno una profonda comprensione del funzionamento interno di Discourse.
- Casi specifici in cui è necessaria una configurazione del sito insolita o molto specifica.
- FunzionalitĂ di test o sperimentali non ancora pronte per lâuso generale.
Gli amministratori che desiderano modificare le impostazioni nascoste solitamente lo fanno perchĂŠ la configurazione predefinita non si allinea perfettamente alle loro esigenze.
Note importanti sulle impostazioni nascoste:
La modifica delle impostazioni del sito nascoste in Discourse può portare a vari problemi come vulnerabilitĂ di sicurezza, impatto negativo sulle prestazioni, degrado dellâesperienza utente o perdita di dati se non eseguita con attenzione!
Le impostazioni del sito nascoste devono essere modificate solo da amministratori Discourse esperti. Prima di modificare unâimpostazione, assicurati di comprendere cosa fa e le implicazioni della modifica. Quando possibile, implementa modifiche significative alla configurazione in un ambiente di staging o di sviluppo. Prima di apportare modifiche ampie o critiche, assicurati che i backup siano aggiornati per ripristinare lo stato del forum in caso di problemi.
Come modificare le impostazioni del sito nascoste
Opzione 1: Console Rails
Per modificare le impostazioni del sito nascoste, è necessario utilizzare la console Rails, uno strumento da riga di comando che consente di interagire direttamente con il backend della tua installazione Discourse. Per modificare le impostazioni tramite la console Rails puoi seguire questi passaggi:
-
Accedi alla Console Rails:
cd /var/discourse ./launcher enter app rails c -
Modifica unâimpostazione:
SiteSetting.your_setting_name = new_valueSostituisci
your_setting_namecon il nome dellâimpostazione che desideri modificare enew_valuecon il valore che desideri impostare. -
Esci dalla Console:
exit
Opzione 2: Impostazione di variabili dâambiente in app.yml
Puoi anche utilizzare le variabili dâambiente per modificare le impostazioni del sito nascoste. Il file app.yml è un file di configurazione utilizzato nelle distribuzioni Docker di Discourse. Si trova tipicamente nella directory /containers della tua installazione Discourse. Ecco come puoi aggiungere o modificare le variabili dâambiente:
-
Accedi al file
app.yml:
Apri il fileapp.ymlnel tuo editor di testo preferito:nano /var/discourse/containers/app.yml -
Aggiungi variabili dâambiente:
Le variabili dâambiente possono essere configurate nella sezioneenvdel fileapp.yml. Seguono il modelloDISCOURSE_NOME_IMPOSTAZIONE: valore. Ad esempio, per impostare lâimpostazionemax_category_nestingsu3tramite una variabile dâambiente, useresti:env: DISCOURSE_MAX_CATEGORY_NESTING: 3 -
Ricostruisci il container:
Dopo aver salvato le modifiche al fileapp.yml, ricostruisci il container Docker di Discourse per applicare le modifiche:cd /var/discourse ./launcher rebuild app
PerchĂŠ abilitare le impostazioni nascoste
Abilitare o modificare le impostazioni del sito nascoste in Discourse consente agli amministratori di personalizzare profondamente la configurazione del proprio forum per soddisfare requisiti tecnici specifici, migliorare le prestazioni o garantire sicurezza e conformitĂ , supportando cosĂŹ unâesperienza utente e unâefficienza operativa finemente calibrate.
Esempi di impostazioni del sito nascoste includono:
- SQL Badge: lâabilitazione di
enable badge sqlconsente agli amministratori del sito di creare query SQL personalizzate per i criteri dei badge, offrendo flessibilitĂ nellâassegnazione dei badge in base a condizioni complesse. - Eliminazione permanente dei post: lâabilitazione di
can permanently deleteconsente lâeliminazione permanente dei post per motivi di conformitĂ o privacy. - Impostazioni di backup S3: lâinclusione dei caricamenti S3 nei backup con
include_s3_uploads_in_backupspuò essere utilizzata per strategie di backup avanzate. - Limiti di frequenza di ricerca: la modifica dei limiti di frequenza di ricerca con impostazioni come
rate_limit_search_userper prevenire il throttling in scenari di alto utilizzo.
Domande frequenti
D: Le impostazioni nascoste possono essere rese visibili nellâinterfaccia utente?
R: Le impostazioni nascoste in Discourse non sono direttamente configurabili tramite lâinterfaccia utente per motivi di sicurezza e complessitĂ .
D: Dove posso trovare informazioni su ciascuna impostazione nascosta?
R: Informazioni dettagliate su ciascuna impostazione sono disponibili nella Guida di riferimento alle impostazioni del sito nascoste e nel codice sorgente di Discourse, in particolare nel file site_settings.yml sul repository GitHub. Ulteriori informazioni su alcune impostazioni sono disponibili anche sui forum Meta di Discourse.
D: Le modifiche apportate tramite variabili dâambiente persistono dopo gli aggiornamenti?
R: SĂŹ, se impostate in app.yml o nel profilo permanente del sistema, queste impostazioni persisteranno dopo gli aggiornamenti a meno che non vengano sovrascritte da altre configurazioni.
D: Come faccio a sapere quali impostazioni possono essere controllate tramite variabili dâambiente?
R: In genere, qualsiasi impostazione del sito Discourse può essere preceduta da DISCOURSE_ e impostata come variabile dâambiente.
D: Ă sicuro configurare informazioni sensibili tramite variabili dâambiente?
R: Le variabili dâambiente sono generalmente considerate sicure per la gestione della configurazione. Tuttavia, assicurati che non siano esposte in ambienti condivisi o non sicuri.
D: Ho bisogno di ricostruire se modifico unâimpostazione del sito?
R: Nella maggior parte dei casi, la modifica di unâimpostazione del sito tramite la console Rails non richiede la ricostruzione della tua configurazione Discourse. Queste modifiche entrano in genere in vigore immediatamente o al refresh della tua istanza. Tuttavia, alcune impostazioni specifiche, in particolare quelle che influenzano gli aspetti fondamentali del sistema, potrebbero richiedere un riavvio o una ricostruzione affinchĂŠ le modifiche abbiano effetto. Per le modifiche apportate nel file app.yml, è necessaria una ricostruzione del tuo container Discourse affinchĂŠ tali modifiche abbiano effetto.
D: Posso annullare facilmente una modifica di unâimpostazione?
R: SĂŹ, la maggior parte delle impostazioni può essere annullata a meno che non comportino lâeliminazione di dati.