Папка public_html нужна для того, чтобы хранить файлы сайта, предназначенные для публичного доступа. 4 При посещении сайта каждая просматриваемая страница загружается из этой папки. 1
Файлы не хранят прямо в корне по причинам безопасности. 2 Если дать доступ к папке веб-серверу и указать её в качестве базовой для хоста, то по умолчанию внешний пользователь, зашедший на этот хост, сможет смотреть и читать любые статические файлы в этой папке. 2
Например, если сайт сложный, со скриптами, обработкой данных, важными настройками и паролями, которые необходимы для работы сайта, но не должны попасть в руки сторонних лиц, их помещают в папку, находящуюся в параллельной ветке или выше уровнем относительно корня хоста. 2 Тогда скрипты легко получат к ним доступ по файловым ссылкам, а пользователи не смогут добраться до них. 2