---
# System prepended metadata

title: .env für den Django SECRET_KEY anlegen

---

# .env für den Django SECRET_KEY anlegen

## 1. `.env` im Projektstamm erstellen

Lege im Stammverzeichnis deines Django-Projekts eine Datei namens `.env` an.

### Inhalt der `.env`

```
SECRET_KEY='dein_sehr_langer_geheimer_schluessel'
```

Falls dein Secret Key bereits versehentlich auf GitHub gelandet ist, generiere einen neuen, z. B. hier:

https://djecrety.ir/

Oder per Django selbst:

```bash
python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
```

## 2. `.env` in `.gitignore` eintragen

Damit die Datei nicht ins Repository gelangt:

`.gitignore`

```
.env
```

## 3. `python-dotenv` installieren

```bash
pip install python-dotenv
```

## 4. Secret Key in `settings.py` aus der `.env` laden

```python
import os
from dotenv import load_dotenv

load_dotenv()  # Lädt Variablen aus .env

SECRET_KEY = os.getenv("SECRET_KEY")
```

Optional: Validierung

```python
if not SECRET_KEY:
    raise ValueError("SECRET_KEY is not set in the environment variables.")
```

## 5. `.env.template` für das Repository anlegen

Erstelle im Stammverzeichnis eine Datei `.env.template`, die als Vorlage dient:

```
# Add your own Django SECRET_KEY here
SECRET_KEY = 't=r(8(lvw-vhj-vhqn_kt&s@)1zzt-3)t0*8$%9^pqtd=_$(p$'
```

Diese Datei darf ins Repository gepusht werden.

## 6. Neue `.env` aus der Vorlage erstellen (z. B. nach dem Klonen)

```bash
cp .env.template .env
```

Anschließend den eigenen Secret Key in der neuen `.env` ergänzen.