Inside folder project and run command line
valet link
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
I get a 404 - Not Found on every Valet Site.
I already uninstalled valet with valet uninstall and installed it again with valet install. I also did a composer global update && valet install.
And i also unlinked a site and linked it again, but i am still getting the Valet 404 - Not Found on every site.
The .valet folders are complete empty -> http://d.pr/i/48Ua
Does someone know what the error could be?
Inside folder project and run command line
valet link
Getting the same. Even linking the site form the root of the project, e.g. Sites/blog doesnt work
@charl I removed valet completely and also deleted the myuser/.valet folder. After this is installed valet again and it worked.
valet link
Then go to your browser, and type in the URL Bar :
yourproject.dev
Still having this issue.. anyone?
Getting this issue as well... not really sure what to try next.
Make sure you don't have a folder in your public directory with the same name of the route you're trying to get.
@indreklasn @tholhubner according the doc. it says 1) make ~/sites , 2) cd ~/sites, 3) valet park , 4) under ~/sites, run laravel new blog, when finished,
@kingsofswing Is the ~/sites mandatory name for the DIR?
@christopher Can you just do
laravel new site
The type in your browser
site.dev
If it doesn't work, I think your valet crash..
I had a 404 too, but realised i was being a bit stupid. I was linking like this
valet link name.dev
instead of just
valet link name
type "valet park" in the main directory of your projects.
Thread still relevant, hasn't been solved yet.
I had the same problem, and created a new folder 'dev' in my home folder. Valet parking that folder seems to work now.
I just found that if I have /usr/sbin/httpd running and listening to port 80 when I install Valet I run into the 404 problem.
Once I stopped apache with "sudo apachectl stop" I was able to re-install Valet and get past it.
It seems that having something already listening on port 80 disrupts the installation process and creates this problem.
Obviously, the next step is to permanently disable /usr/sbin/httpd from listening on 80 on restart.
None of the above worked for me, but this did:
cd to your home directory in Terminal and remove the hidden .valet folder. So, in my case (pat$ is my bash user):
pat$ rm -r .valet
Now reinstall valet with:
pat$ valet install
Then cd to your sites/code/wherever your laravel sites are directory and:
pat$ valet park
You can cd into one of your site folders and type this to open the site in your browser with valet:
pat$ valet open
Or just try the default my_site_folder.dev url in your browser.
Just wanted to mention, because I was having this same 404 problem:
If you call your directory ex-site.dev then you'll need to go to ex-site.dev.dev in you browser. I was used to Homestead so I added the .dev TLD as part of the folder name, but now it is not needed. Just call it ex-site and example-site.dev will work in the browser.
Make sure you didn't accidentally remove the "public/index.php" file in your public directory.
Had the same issue and noticed in git status that I removed the index.php, when I restored it valet worked fine again.
Thanks @MGD for the hint!
Well after so much back and forth, for some reason I didn't notice but my valet uses .test instead of .dev. So that's one thing worth trying. Once I got that revelation, I could only ping it but couldn't actually paste it in the browser and just hit enter and it would take me there.
For some reason, you have to do what @patgilmour recommends in his fourth step:
cd to your created project and put valet open . Once you open it like that, THEN you can paste the link on your browser. Why? I have no clue, but that is how it works for me at least for now.
Thanks @patgilmour !
Solved my problem I was doing 'valet link my-app.test' then 'valet domain test' the result is my-app.test.test instead of my-app.test We should use 'valet link my-app'
It works on me, Try:
It worked great! Does it mean that I have to run valet link every time?
Please or to participate in this conversation.