Add system update feature, git-ignore local configs, and fix homepage request logging

- Exclude config.json and admin.json in .gitignore so live settings/passwords are never overwritten by git
- Auto-generate config.json and admin.json with defaults if missing
- Add config.json.example and admin.json.example reference templates
- Add System Update page (/admin/update) in Admin Console to pull updates via Git with 1 click
- Log effective page name in index.php instead of literal 'auto'
- Add extra HAProxy/PFSense proxy headers to RequestLogger::getClientIp()
This commit is contained in:
2026-07-28 17:26:34 +02:00
parent e2d9ddd516
commit 62dd7ddb9c
10 changed files with 205 additions and 10 deletions
+3 -1
View File
@@ -87,7 +87,8 @@ CodePress CMS is een lichtgewicht, file-based content management systeem gebouwd
- **Media beheer** - Uploaden en verwijderen van mediabestanden in `content/-assets/`
- **Gebruikersbeheer** - Gebruikers toevoegen, verwijderen, wachtwoorden wijzigen
- **Handleiding** - Ingebouwde documentatie met API referentie
- **Logging** - Activiteiten log en requests log met IP, pagina, domein; te bekijken en downloaden via `/admin/logs`
- **Systeem Update** - Eenvoudig de site bijwerken via `/admin/update` met één klik via Git pull
- **Git-safe Configuratie** - `config.json` en `admin/config/admin.json` worden automatisch gegenereerd als ze niet bestaan en zijn uitgesloten van Git, waardoor wachtwoorden en instellingen behouden blijven bij updates
- **Bot & AI blokkering** - Automatische 403 voor bekende bots en AI-crawlers
- Session-based authenticatie met bcrypt hashing
- CSRF-bescherming, brute-force lockout (5 pogingen, 15 min)
@@ -315,6 +316,7 @@ Media bestanden (afbeeldingen, PDFs, video, audio) kunnen in elke `content/` sub
| `users` | Gebruikersbeheer |
| `guide` | Handleiding (deze documentatie) |
| `logs` | Log viewer (activiteiten + requests) |
| `update` | Systeem update via Git pull (één-klik update) |
### Editor Functionaliteit