Vhost Config habe ich schon nachgesehen. Der Pfad zum DocumentRoot ist der, der er sein soll. Nirgendwo gibt es eine Konfiguration, dass auf /public_html eine Domain routen würde oder /public_html der DocumentRoot wäre. Das /public_html Verzeichnis ist deswegen über www nicht erreichbar, eben weil der DocumentRoot für die TLD Domain auf /public_html/hauptdomain routet. Das Einzige, was ich mir als Ursache vorstellen kann, ist dass der Shopware Installer nicht den Pfad vom DocumentRoot ausliest, sondern den HomeDir Pfad und dann nur 1 Verzeichnis unmittelbar unter diesem HomeDir akzeptiert, was dann das /home/public, bzw. /home/public_html wäre.
Ich hab mir meine Konfiguration aber nicht selbst zusammengebastelt, sondern nur die Vorgabe von cPanel/WHM befolgt.
Wie kommst Du darauf, dass es auf einer Apache/nginx Standard Installation laufen würde? Ich habe weder Apache noch nginx, aber die Konfiguration und alles andere wird aus der Apache Config ausgelesen.