20 Aug 2026

Symfony on Mac: web/, Messenger, HTTPS

Symfony template, web/ docroot, Mailpit, and Pro workers.

Symfony often lands in agencies as the “second PHP framework” after Laravel. MacFullStack treats Symfony like Laravel: project template, web/ docroot, MySQL/Redis from Stack, HTTPS via mkcert.

Create and docroot

  1. New project → Symfony template — web/ as the public directory (like Laravel’s public/).
  2. Hosting import: verify docroot on the card — repo root is wrong, use web/.
  3. Sync vhosts after docroot or alias changes.

Universal CMS detection: /cms. Templates: /help/project-templates.

Environment

macstack shell --install
composer install
php bin/console cache:clear
  • .env: DATABASE_URL from Stack credentials (MySQL by default; PostgreSQL — Pro).
  • Mailpit via Tools → Mail — point MAILER_DSN at local SMTP.
  • Redis for cache/session — port from Stack, not a leftover docker-compose host.

Messenger and workers

On Pro/Teams — managed workers on the project card: messenger:consume, schedule:run. Free tier — one PHP project; see /help/pro-teams.

Symfony + API Platform + SPA

  • API on api.shop.localhost (Symfony PHP project).
  • React/Vite/Angular — Node proxy on a second card (/blog/angular-vite-mac).
  • Less CORS pain when both sides use *.localhost with HTTPS.

Moving from Docker-only Symfony

DB dump → Tools → Databases, Native runtime, migrate-runtime when switching modes: /blog/perehod-s-docker-only.

Herd comparison: /blog/macfullstack-vs-herd.

MacFullStack

Try it on your Mac

Free — one PHP project and core stack. Pro unlocks Next/Django, Postgres, Share, and unlimited projects.

Download Pro Teams