trap EXIT/INT/TERM feuert auch bei Ctrl+C — vorheriges node-Cleanup
lief nur beim Start, nicht beim Beenden.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Path-based Fallback /webmail/* mit ->name('webmail.') re-added — kein
Namenskonflikt mehr mit web.php 'login'. Behebt gecachte 301-Redirects
im Browser. npm dev-script räumt public/hot vor dem Start auf damit
Vite-Stop nie mehr die App kaputt macht.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>