macOS

Where Does Laravel Herd Store Sites and Config?

Herd keeps sites, PHP configs, nginx files, and logs under Library Application Support Herd on Mac.

Last updated

Herd centralizes itself in ~/Library/Application Support/Herd. Service configs live in config, per-site nginx files in config/valet/Nginx, each PHP version's php.ini in config/php, and nginx and php-fpm logs in Log. Deleting the whole folder resets Herd to a clean slate.

Most fixes touch one subfolder. A 502 usually means a stale per-site nginx file. A PHP limit means editing that version's php.ini and restarting services. The herd ini command jumps straight to the right php.ini without spelunking.

Where Herd stores this, by platform

macOS
~/Library/Application Support/Herd

Root holds config/ (nginx, valet, php), Log/ (nginx, php-fpm, mail), and binaries. Per-site nginx files are named after the site domain. herd ini opens the active php.ini.

Frequently asked questions

Where is the php.ini for my Herd PHP version?

At ~/Library/Application Support/Herd/config/php/<version>/php.ini. Run herd ini to open it directly. Restart Herd services after edits so nginx requests pick up the change.

One Herd site shows Bad Gateway. Where do I look?

Check its file in config/valet/Nginx first, then the Log folder for nginx and php-fpm errors. Regenerating the site config or re-securing it usually clears stale entries.

Notice an outdated path? Let us know.