в nginx есть папочки sites-avialable и sites-enabled в одной находятся настройки на домен, в другой символические ссылки на файлы в первой (не помню в какой конкретно физические, в какой ссылки, в инете все есть)
так вот, по дефолту есть один дефолтный файлик с направлением localhost в папочку /var/www/html
в этом же файлике прописаны индексные страницы и расширения
т.е. если мы обращаемся в localhost/ получаем код из файла index.html, если обращаемся к localhost/test/ получаем код с /var/www/html/test/index.html а если localhost/test.html то из /var/www/html/test.html
можно создать другую папку в любом месте, создать второй файлик настроек nginx, дописать в него правила, чтобы он читал из этой папки например по домену test, и добавить в файл hosts домен test направленный на localhost, так можно работать с другим проектом не удаляя первый.
т.е. итог: что прописано в настройках, то будет корневой папкой домена, все остальные обращения в http будут относится к этой физической папке. это основа, если копнуть глубже, то существую различные правила, которые запрещают обращения в определенные места или заменяют на другие (например чпу), также зависит от кода, есть абсолютные пути, есть относительные