Nel 90% dei casi è l'APP_KEY nel .env scritta senza il prefisso base64:. Il formato corretto è:
APP_KEY=base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
Si genera con echo "base64:$(openssl rand -base64 32)". Senza prefisso le migrazioni passano ma ogni richiesta web fallisce in cifratura ("Unsupported cipher or incorrect key length"). Conferma in docker logs itsm-fpm, correggi e applica con docker compose up -d. Stessa attenzione per APP_KEK_SECRET: dev'essere base64 di 32 byte (openssl rand -base64 32), non hex.