Laravel on CloudMagnus
Laravel with composer-create-project done and your .env connected to the database we just provisioned. php artisan key:generate already ran. You handle migrations and your app code.
What our scaffold installs
composer create-project --prefer-dist laravel/laravelinto yourhtdocs/.envwithAPP_URLset to your domain, plus all fourDB_*entries (connection, host, port, database, username, password) wired to the MySQL database we just provisionedphp artisan key:generatealready executed;APP_KEYpopulated- A MySQL database scoped to your site, owned by a per-site MySQL user
- nginx vhost configured for Laravel's
public/directory as the document root, with the standardtry_filesrewriting
What you do next
- SSH or SFTP into your site (credentials on the site detail page).
- Run migrations:
php artisan migrate. - Build your app on top of the Laravel skeleton, or replace the skeleton with your own Laravel codebase.
The .env file
The platform writes .env with mode 600 (read/write only by your site user). The DB credentials reach the file via a tee heredoc invoked through sudo -u <siteUser>; the password is never in argv or any process listing.
If you regenerate .env manually (php artisan key:generate --force or by replacing it with your own), make sure to keep the DB lines or your app loses access to its database.
Build pipeline
CloudMagnus does not run composer install or npm run build for you on deploy. If your Laravel app uses Mix or Vite for assets, build locally (or in CI) and ship the build artifacts via SFTP.
Queue workers and scheduled tasks
Laravel's queue worker (php artisan queue:work) and scheduler (php artisan schedule:run via cron) need a process manager. CloudMagnus doesn't currently expose a process manager UI for arbitrary commands. SSH in and run nohup or set up a cron job per the dashboard's cron tab.
Common Laravel issues
500 error after deploying changes
Most likely: composer install wasn't run after pulling new dependencies, or the .env got stomped. Check storage/logs/laravel.log for the actual error.
"No application encryption key has been specified"
Means APP_KEY got cleared. Run php artisan key:generate --force over SSH.
403 errors on every page
Almost always a permissions issue on storage/ or bootstrap/cache/. SSH in and: chmod -R 775 storage bootstrap/cache.
Sessions logging out randomly
If you've set SESSION_DRIVER=file and have multiple PHP-FPM workers, file-based sessions can race. Switch to database sessions: SESSION_DRIVER=database and run the session migration.
What CloudMagnus doesn't do for Laravel
- Run migrations on deploy. You handle that explicitly.
- Run
composer installon deploy. Build locally or in CI; ship artifacts. - Asset builds. Vite/Mix runs on your machine, not ours.
- Queue workers, schedulers, or any long-running process. SSH and set them up.