---
title: "Cos'è un file .env?"
description: "Un file .env memorizza secret come le chiavi API fuori dal tuo codice, così non vengono mai pubblicati. Impara cos'è e come tenerlo al sicuro."
type: "fundamental"
locale: "it"
category: "concepts"
canonical: "https://agenticschool.dev/it/fondamenti/what-is-an-env-file"
dateModified: "2026-06-12"
---

# Cos'è un file .env?

- Category: concepts
- Updated: 2026-06-12
- Keywords: .env file, environment variables, secrets, API keys, gitignore
- Canonical URL: https://agenticschool.dev/it/fondamenti/what-is-an-env-file
- Locale: it

> Un file .env memorizza secret come le chiavi API fuori dal tuo codice, così non vengono mai pubblicati. Impara cos'è e come tenerlo al sicuro.

Un file .env è un file in testo semplice che memorizza secret e impostazioni come chiavi API e password, separati dal tuo codice, così non vengono mai pubblicati per sbaglio. Il nome è l'abbreviazione di "environment" (ambiente). La tua applicazione vi legge valori a runtime, ma il file stesso resta privato e non viene mai caricato su GitHub. Padroneggiare bene questa singola abitudine è la cosa migliore che un principiante possa fare per non far trapelare nessuna chiave.

## Cosa va in un file .env

Un file .env è un elenco di coppie nome-valore, una per riga. Tutto ciò che è sensibile o specifico dell'ambiente va qui invece di essere scritto fisso nei tuoi file sorgente.

```bash
OPENAI_API_KEY=sk-your-secret-key
DATABASE_URL=postgres://user:pass@host/db
SITE_URL=http://localhost:3000
```
Ogni riga è NOME=valore. Per valori semplici, niente virgolette.

## La regola d'oro: fuori da Git

Tutto il senso di un file .env è che resti privato. Ti assicuri che Git non lo segua mai elencandolo in un file .gitignore. La regola è assoluta: i secret in .env, .env in .gitignore, e una chiave non compare mai in codice che viene committato.

```bash
# .gitignore
.env
.env.local
```
Elencarli qui dice a Git di ignorare .env, così non viene mai caricato.

## In produzione

Su un vero deploy, non carichi nemmeno il tuo file .env. Al suo posto, definisci gli stessi nomi e valori come "Environment Variables" nel pannello del tuo host, per esempio Vercel. Così la produzione ha le sue chiavi, separate, e un errore in sviluppo non può mai toccare i dati reali.

## Confusioni frequenti dei principianti

Una confusione frequente è tra il valore secret e il suo nome. Il tuo codice fa riferimento al nome, come OPENAI_API_KEY, e il vero secret vive solo nel file .env e nel pannello dell'host, mai nel codice committato. Un'altra è la differenza tra un file .env (per secret e impostazioni) e .gitignore (l'elenco delle cose che Git non deve mai seguire); lavorano insieme ma fanno cose diverse. Se un giorno committi una chiave per sbaglio, non limitarti a cancellare la riga per proseguire. Considera la chiave compromessa, ruotala generandone una nuova nel pannello del fornitore, e la vecchia diventa inutile per chiunque l'abbia vista. Imparare presto questa abitudine fa sì che un passo falso sia un piccolo fastidio, non una catastrofe.

## FAQ

### Perché non committare mai un file .env?

Perché contiene secret come chiavi API. Se finisce su GitHub, chiunque lo trovi può usare le tue chiavi, generare costi o accedere ai tuoi dati. Elenca sempre .env in .gitignore.

### Come legge la mia applicazione il file .env?

I framework lo caricano automaticamente ed espongono i valori come Environment Variables che il tuo codice può leggere. Fai riferimento a un valore per nome, senza mai incollare il secret nel tuo codice.

### Cosa faccio dei secret in produzione?

Definiscili come Environment Variables nel pannello del tuo host, per esempio Vercel, invece di caricare il file. La produzione riceve le sue chiavi, separate dallo sviluppo.
