659154c93a
Add public/index.php, private config bootstrap, FTPS deploy script, and complete todo/01 including Let's Encrypt, HTTPS redirect, and HSTS docs. Co-authored-by: Cursor <cursoragent@cursor.com>
49 lines
1.3 KiB
Markdown
49 lines
1.3 KiB
Markdown
# 01 — Bootstrap, `.env`, Deployment
|
|
|
|
**Priorität:** high
|
|
**Status:** erledigt (2026-06-11)
|
|
**Abhängigkeiten:** keine
|
|
**Blockiert:** 02, 03, 04, 05, 06
|
|
|
|
## Ziel
|
|
|
|
Lokales Repo mit dem Webspace verbinden und eine deploybare Grundstruktur anlegen.
|
|
|
|
## Checkliste
|
|
|
|
- [x] `.env.example` nach `.env` kopieren
|
|
- [x] Plesk-User/Passwort, FTP in `.env` eintragen (nicht committen)
|
|
- [x] Document Root: `httpdocs/` (Plesk-Standard)
|
|
- [x] PHP-Version: 8.5.x (Plesk Cron)
|
|
- [x] Verzeichnis `public/` als Quelle für `httpdocs/`
|
|
- [x] Erstes Deployment: `public/index.php` (Status-Beacon Platzhalter)
|
|
- [x] HTTPS Let's Encrypt in Plesk (gültig bis 2026-09-09)
|
|
- [x] HTTP → HTTPS Redirect (301)
|
|
- [x] HSTS (`Strict-Transport-Security`, max-age 15768000, includeSubDomains)
|
|
- [x] Deploy-Skript: `scripts/deploy.sh` (FTPS/FTP via Python)
|
|
|
|
## Server-Layout (nach Deploy)
|
|
|
|
```
|
|
0012.de/
|
|
├── httpdocs/ ← public/
|
|
│ └── index.php
|
|
└── private/ ← nicht öffentlich
|
|
├── .env
|
|
├── config/bootstrap.php
|
|
└── data/ ← später last-checks.json
|
|
```
|
|
|
|
## Deploy
|
|
|
|
```bash
|
|
./scripts/deploy.sh # upload
|
|
./scripts/deploy.sh --dry-run
|
|
```
|
|
|
|
## Akzeptanzkriterien
|
|
|
|
- [x] FTP-Login funktioniert (deploy.sh)
|
|
- [x] `https://0012.de/` — Landing Page über TLS
|
|
- [x] `.env` liegt lokal, ist in `.gitignore`
|