When I call a web page, I can call it as:
www.mypage.com/index.html
That specifies which file. If it’s in a public directory the server says “OK, they want that file and it’s in a public directory so I’ll send it back.”
Another way to access that web page is:
www.mypage.com
In that case, the server sees it come in to an empty pathname. If the server has instructions of what to do on an empty pathname. Very commonly the default is to look for index.html and send it back.
The the first case, the pathname will be “/index.html” (I think) and in the second it will be “/” (an empty path). They very often will go to the same file, index.html.
In theory, you could have the empty path route to something else, the server could send it to “www.mypage.com/login” or whatever.
This will all make more sense when you get to the backend section and build servers and routes and serve files yourself. Until then, it all seems like magic.