Django

Settings e configurazione di produzione

Divisione dei settings (base/dev/prod), gestione dei secret, ALLOWED_HOSTS, CSRF_TRUSTED_ORIGINS, settings SECURE_*, .env/vault, configurazione dello storage

22 domande da colloquio·
Senior
1

Qual è la struttura consigliata per organizzare i file settings di un progetto Django in produzione?

Risposta

La struttura consigliata consiste nel creare un package settings con un file base.py contenente le configurazioni comuni, quindi file separati dev.py, staging.py e prod.py che importano ed estendono base.py. Questo approccio consente di condividere la configurazione comune personalizzando al contempo ambienti specifici, facilitando la manutenzione e riducendo la duplicazione del codice.

2

Come specificare quale file settings utilizzare all'avvio di un progetto Django?

Risposta

La variabile d'ambiente DJANGO_SETTINGS_MODULE consente di specificare il percorso Python al modulo settings da utilizzare. Ad esempio, DJANGO_SETTINGS_MODULE=myproject.settings.prod indica a Django di usare il file prod.py del package settings. Questa variabile può essere impostata nella shell, nei file di configurazione del server o negli script di deployment.

3

Qual è la funzione del setting ALLOWED_HOSTS in Django?

Risposta

ALLOWED_HOSTS è un elenco di domini/host autorizzati a servire l'applicazione Django. Questo meccanismo di sicurezza protegge dagli attacchi HTTP Host header validando l'header Host di ogni richiesta. In produzione con DEBUG=False, questo setting è obbligatorio e deve contenere i domini legittimi dell'applicazione per evitare errori 400 Bad Request.

4

Quale valore di ALLOWED_HOSTS accetta qualsiasi host, e perché è pericoloso in produzione?

5

A cosa serve il setting CSRF_TRUSTED_ORIGINS introdotto in Django 4.0?

+19 domande da colloquio

Padroneggia Django per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis