File server works with caddy CLI but not systemd

Ah, it might be that systemd is hiding all of /home for you; maybe try putting your files in /srv/gmhafiz.com or /var/www/gmhafiz.com or something like that.

What user were you running Caddy as with v1? Were you using systemd there as well?

My current hunch (but I’m not 100% certain on the specifics so I’m asking someone to help clarify for me), I think that if the caddy user doesn’t have x (executable) permissions on /home/gmhafiz, it hides all the contents of that directory to it. But I might be wrong.