Ricki Ich möchte noch ergänzen, dass beim Aufruf via IP die Startseite des Apache2 angezeigt wird.
Das scheint die vHost-Konfiguration zu sein (oder wie immer das bei Apache heißt), die leitet anhand des übermittelten Hostnamens auf das entsprechende HTTP-Rootverzeichnis weiter. Also Beispielsweise example.com -> /srv/http/example.com/htdocs
(oder wo auch immer im jeweiligen Setup das dann liegen mag).
Wenn du beim Aufruf über die IP-Adresse die Standard-Startseite des Servers angezeigt bekommst, liegt das daran, dass der Server keinen Hostnamen übermittelt bekommt, für den er auf das passende Verzeichnis weiterleiten kann.
Also entweder treibst du deinem Webserver aus, das so zu machen (so dass er dann stattdessen egal bei welcher Anfrage immer aufs identische HTTP-Rootverzeichnis zugreift und dieses bereitstellt), oder du benutzt einfach den Hostnamen.
Edit: Schau mal hie für mehr Details: https://wiki.archlinux.org/title/Apache_HTTP_Server#Virtual_hosts