In 2011 I switched my web development environment from Windows to OSX. I was used to the ease of WAMP so I naturally started out using MAMP for a similar experience. Growing tired of certain limitations however I configured OSX to be its own local server environment; installing apache, php and mysql locally and setting up virtual hosts in the apache config or .dev domains in the hosts file. This worked alright and meant the virtual server was always running and available. The downside was that it broke with pretty much every major OSX update. Things usually changed a bit in the locally installed apache instance which meant you had to stressfully research and repair the installation before you could go back to work. So the unreliability made me switch to Vagrant. Having things contained in a virtual machine completely separate from your local OS fixed that stability and reliability issue.
Recently however I’m considering another move — and for the time being a partial move — to Laravel Valet. Valet runs locally again, which makes it a bit faster and lighter, and it has some added benefits: no local Apache, no hosts file configuration, no machine boot/shutdown, ability to share local sites and ability to enable HTTPS.
Though the installation is pretty straightforward, I ran into some issues. Some were not widely documented online so hopefully these pointers might help someone in the same boat getting started with Laravel Valet.
Seeing this message in the browser when accessing a valet served domain actually means it doesn’t work. This is the local apache answering the request instead of Valet. To cure it, shut down apache and reinstall Valet:
sudo apachectl stop
composer global require laravel/valet
You have to get familiar with the terms and functionality of parking and linking. If you have a folder with projects where each project folder is the root of a website, then you can
park in that parent folder and each project folder will automatically become project-folder-name.dev. Since my project folder structure is different however (and I imagine most are) I use
link to set up each hostname individually. To do this correctly, cd into the project’s webroot, then run the following to get a project-domain.dev.
Do this in the right folder and don’t add “.dev” or it won’t work.
valet link project-domain
That’s it so far. For the documentation on Valet, visit https://laravel.com/docs/5.4/valet
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>