Das mit dem sysmlink im Dateisystem auf den public-Ordner ist schon recht ausführlich im Forum erklärt worden.
Du installierst Shopware so, das es zunächst nicht im öffentlichen HTML-Baum liegt.
Dann legst Du in Deinem Basisverzeichnis von der Webseite einen „symbolischen Link“ namens „shop“ an, der auf das public-Verzeichnis von Shopware zeigt.
Beispiel:
/deinhosting/publicHtml/deineWebseite.
Deine Domain ist auf /deinhosting/publicHtml/deineWebseite eingestellt.
Dann legst Du z.b. in /deinhosting/shopware6 Dein Shopware ab.
Nun erstellst Du einen Symlink (Provider fragen wie das geht) shop in /deinhosting/publicHtml/deineWebseite, der auf /deinhosting/shopware6/public zeigt.
Also /deinhosting/publicHtml/deineWebseite/shop => /deinhosting/shopware6/public
Ein Symlink ist eine Art Datei oder Ordner, die keine Inhalte hat, sondern auf andere Datein oder Ordner zeigt.
Edit: