|
@@ -17,17 +17,18 @@ php /pfad/zum/projekt/bin/cleanup.php
|
|
|
|
|
|
|
|
## Retention
|
|
## Retention
|
|
|
|
|
|
|
|
-- Drafts: `config/app.php -> retention.draft_days` (Default 14)
|
|
|
|
|
-- Submissions: `config/app.php -> retention.submission_days` (Default 90)
|
|
|
|
|
|
|
+- Drafts: `config/app.local.php -> retention.draft_days` (Default 14)
|
|
|
|
|
+- Submissions: `config/app.local.php -> retention.submission_days` (Default 90)
|
|
|
|
|
|
|
|
## Konfiguration (Sample-Setup)
|
|
## Konfiguration (Sample-Setup)
|
|
|
|
|
|
|
|
- Versionierte Vorlagen: `config/app.sample.php`, `config/mail.sample.php`
|
|
- Versionierte Vorlagen: `config/app.sample.php`, `config/mail.sample.php`
|
|
|
-- Lokale Runtime-Dateien: `config/app.php`, `config/mail.php`
|
|
|
|
|
|
|
+- Stabile Loader-Dateien im Repo: `config/app.php`, `config/mail.php`
|
|
|
|
|
+- Lokale Runtime-Dateien: `config/app.local.php`, `config/mail.local.php`
|
|
|
- Erstsetup:
|
|
- Erstsetup:
|
|
|
- - `cp config/app.sample.php config/app.php`
|
|
|
|
|
- - `cp config/mail.sample.php config/mail.php`
|
|
|
|
|
-- `config/app.php` und `config/mail.php` sind lokal und sollen nicht in Git versioniert werden.
|
|
|
|
|
|
|
+ - `cp config/app.sample.php config/app.local.php`
|
|
|
|
|
+ - `cp config/mail.sample.php config/mail.local.php`
|
|
|
|
|
+- `config/*.local.php` sind lokal und sollen nicht in Git versioniert werden.
|
|
|
|
|
|
|
|
## Logs
|
|
## Logs
|
|
|
|
|
|
|
@@ -39,7 +40,7 @@ php /pfad/zum/projekt/bin/cleanup.php
|
|
|
|
|
|
|
|
## Rate Limiting
|
|
## Rate Limiting
|
|
|
|
|
|
|
|
-- Konfiguration: `config/app.php -> rate_limit`
|
|
|
|
|
|
|
+- Konfiguration: `config/app.local.php -> rate_limit`
|
|
|
- Persistenz: `storage/rate_limit/`
|
|
- Persistenz: `storage/rate_limit/`
|
|
|
- Detaillierte Doku: `docs/RATE_LIMITING.md`
|
|
- Detaillierte Doku: `docs/RATE_LIMITING.md`
|
|
|
- Bei erhöhten `429`-Antworten zuerst `requests/window_seconds` prüfen und gegen reale Nutzerlast kalibrieren.
|
|
- Bei erhöhten `429`-Antworten zuerst `requests/window_seconds` prüfen und gegen reale Nutzerlast kalibrieren.
|
|
@@ -51,7 +52,7 @@ Regelmäßig sichern:
|
|
|
|
|
|
|
|
- `storage/submissions/`
|
|
- `storage/submissions/`
|
|
|
- `storage/uploads/`
|
|
- `storage/uploads/`
|
|
|
-- `config/`
|
|
|
|
|
|
|
+- `config/*.local.php`
|
|
|
|
|
|
|
|
`storage/drafts/` ist temporär und kann bei Bedarf ausgeschlossen werden.
|
|
`storage/drafts/` ist temporär und kann bei Bedarf ausgeschlossen werden.
|
|
|
|
|
|
|
@@ -59,14 +60,14 @@ Regelmäßig sichern:
|
|
|
|
|
|
|
|
1. Projektdateien deployen.
|
|
1. Projektdateien deployen.
|
|
|
2. Backup von `storage/submissions` und `storage/uploads` zurückspielen.
|
|
2. Backup von `storage/submissions` und `storage/uploads` zurückspielen.
|
|
|
-3. `config/` wiederherstellen.
|
|
|
|
|
|
|
+3. `config/*.local.php` wiederherstellen.
|
|
|
4. Schreibrechte prüfen.
|
|
4. Schreibrechte prüfen.
|
|
|
|
|
|
|
|
## Troubleshooting
|
|
## Troubleshooting
|
|
|
|
|
|
|
|
- Keine Mails: Mailfunktion des Hosters prüfen, `mail.log` ansehen.
|
|
- Keine Mails: Mailfunktion des Hosters prüfen, `mail.log` ansehen.
|
|
|
- Upload Fehler: `upload_max_filesize` / `post_max_size` und Schema-Limits prüfen.
|
|
- Upload Fehler: `upload_max_filesize` / `post_max_size` und Schema-Limits prüfen.
|
|
|
-- Login geht nicht: `admin.password_hash` prüfen, ggf. temporär `password_plain_fallback` nutzen.
|
|
|
|
|
|
|
+- Login geht nicht: `config/app.local.php -> admin.password_hash` prüfen, ggf. temporär `password_plain_fallback` nutzen.
|
|
|
- ZIP Download fehlgeschlagen: `ZipArchive` Erweiterung auf Hosting prüfen.
|
|
- ZIP Download fehlgeschlagen: `ZipArchive` Erweiterung auf Hosting prüfen.
|
|
|
- Viele `429` Antworten: `docs/RATE_LIMITING.md` prüfen, Limits anpassen oder `storage/rate_limit/` kontrollieren.
|
|
- Viele `429` Antworten: `docs/RATE_LIMITING.md` prüfen, Limits anpassen oder `storage/rate_limit/` kontrollieren.
|
|
|
- 500 ohne Apache/PHP-Fehlerausgabe: `storage/logs/php_fatal.log` und `storage/logs/php_runtime.log` prüfen.
|
|
- 500 ohne Apache/PHP-Fehlerausgabe: `storage/logs/php_fatal.log` und `storage/logs/php_runtime.log` prüfen.
|