In Ihrer /etc/httpd/conf/httpd.conf, wenn Ihre Listen-Direktive lautet
Listen 80
Das ist gemein
*:80
Sie haben in Ihrer /etc/httpd/conf/httpd.conf und /etc/httpd/conf.d/default.conf ein Paar <listener>
+ definiert, <servename>
die identisch sind: *:80
+ <server-ip>
. Apache berücksichtigt also nur einen.
Ihre vhost-Konfiguration nützt also nichts.
Ihre Datei /etc/httpd/conf/httpd.conf reicht aus, um den Zugriff auf Ihr Verzeichnis / var / www / html zu blockieren.
Einfach hinzufügen:
<Directory /var/www/html>
Order Deny,Allow
Deny from all
Options None
AllowOverride None
</Directory>
Bitte lesen Sie https://httpd.apache.org/docs/2.4/en/vhosts/name-based.html#alg :
Wie der Server den richtigen namensbasierten virtuellen Host auswählt
Es ist wichtig zu erkennen, dass der erste Schritt bei der namenbasierten Auflösung virtueller Hosts die IP-basierte Auflösung ist. Die auf Namen basierende virtuelle Hostauflösung wählt erst den am besten geeigneten namenbasierten virtuellen Host aus, nachdem die Kandidaten auf die beste IP-basierte Übereinstimmung eingegrenzt wurden. Die Verwendung eines Platzhalters (*) für die IP-Adresse in allen VirtualHost-Anweisungen macht diese IP-basierte Zuordnung irrelevant.
Wenn eine Anfrage eingeht, findet der Server das beste (spezifischste) Übereinstimmungsargument basierend auf der IP-Adresse und dem Port, die von der Anfrage verwendet werden. Wenn mehr als ein virtueller Host diese Kombination aus Adresse und Port am besten enthält, vergleicht Apache die Anweisungen ServerName und ServerAlias weiter mit dem in der Anforderung enthaltenen Servernamen.
Wenn Sie die ServerName-Direktive auf einem namenbasierten virtuellen Host weglassen, verwendet der Server standardmäßig einen vollqualifizierten Domänennamen (FQDN), der vom Systemhostnamen abgeleitet ist. Dieser implizit festgelegte Servername kann zu einem kontraintuitiven Abgleich des virtuellen Hosts führen und wird nicht empfohlen.
Der standardmäßige namensbasierte vhost für eine IP- und Portkombination Wenn in der Gruppe der virtuellen Hosts, die die spezifischste übereinstimmende Kombination aus IP-Adresse und Port enthalten, kein übereinstimmender Servername oder ServerAlias gefunden wird, wird der erste aufgelistete virtuelle Host verwendet, der übereinstimmt.