Vraag Opstartwaarschuwing Apache 2: NameVirtualHost *: 80 heeft geen VirtualHosts


Wanneer mijn Ubuntu Apache-server (Apache 2) opstart krijg ik een waarschuwingsbericht dat luidt:

[warn] NameVirtualHost *:80 has no VirtualHosts

De webserver werkt echter prima. Wat kan er mis zijn met de configuratie van mijn site om mij deze waarschuwing te geven?

Het configuratiebestand in kwestie (gelokaliseerd in /etc/apache2/sites-available) leest als volgt (details verwijderd om het kort te houden)

<VirtualHost *>
    <Location /mysite>
        # Configuration details here...
    </Location>

    # Use the following for authorization.
    <LocationMatch "/mysite/login">
        AuthType Basic
        AuthName "My Site"
        AuthUserFile /etc/sitepasswords/passwd
        Require valid-user
    </LocationMatch>
</VirtualHost>

Kan het feit dat ik gebruik <Location> deel uitmaken van het probleem?


66
2018-04-30 18:16


oorsprong




antwoorden:


Verandering

<VirtualHost *>

lezen

<VirtualHost *:80>

Of zijn (NameVirtualHost *: 80) twee keer toegevoegd in uw apache2 Confing-bestand. (Standaard is het toegevoegd in het ports.conf bestand)

Dit zou de fout moeten oplossen.

terzijde: je moet deze fout niet negeren. De configuratie van Apache, vooral als het omzetten van virtuele hosts (bijv. Include /etc/httpd/vhosts.d/*) is niet stabiel. Dat betekent dat je de volgorde van het laden van de hosts niet expliciet beheert, zodat de standaard vhost voor een IP degene wordt die het eerst wordt geladen, wat tot onbedoelde consequenties kan leiden.

Een voorbeeld hiervan is de standaard vhost voor een IP zal ook beschikbaar zijn op dat IP, in plaats van het naam. Dit kan ertoe leiden dat informatie naar Google lekt en verwijst naar uw IP-sites in plaats van naar namen. Dit kan verwarrend zijn voor klanten.

De bovenstaande NameVirtualHost-fout hierboven kan een hint zijn dat apache dingen op een niet-optimale manier heeft geladen, dus je moet het niet negeren.


53
2018-05-10 03:30



Gelukt! Bedankt voor het opruimen! - Kit Roed
U kunt de standaard vhost als volgt instellen: <VirtualHost _default_ thehostname.com> - Amy B


Dat zou kunnen zijn omdat je de NameVirtualHost-richtlijn op meer dan één plaats hebt staan.

Ik ben niet op de hoogte van andere distributies, maar in Ubuntu / Debian is de configuratie van Apache opgesplitst in verschillende bestanden, dus je moet controleren waar de duplicatie is (httpd.conf, apache2.conf, ports.conf, conf.d / *).

Oh, en ik heb net deze geweldige bron gevonden met meer informatie: Common Apache Misconfigurations.


51
2018-04-30 18:21



De link die je hebt gegeven ziet eruit als een geweldige hulpbron om de nuances van Apache-configuratiebestanden te begrijpen. Bedankt! - Kit Roed
Bedankt! Dit was mijn probleem - ik had een virtueel.conf gemaakt voor NameVirtualHost, niet wetende dat het al in ports.conf zat - rcampbell
Bedankt - Hetzelfde probleem hier in de standaardconfiguratie van een ubuntu-server: ports.conf bevat NameVirtualHost : 80 en zou niet herhaald moeten worden in de sites-enabled / configuratiebestanden! - DrSAR
In mijn geval was dit probleem omdat ubuntu had NameVirtualHost *:80 beide in ports.conf en in conf.d/virtualhosts, wat een Ubuntu-bug lijkt te zijn. - fluffy


Op een Debian / Lenny-doos: In /etc/apache2/ports.conf is er een extra NameVirtualHost-statement - dat zou de oorzaak kunnen zijn voor dit probleem (er is ook dezelfde verklaring in / etc / apache2 / sites-available / default). Ik heb commentaar gegeven en de fout is mislukt.


9
2017-07-19 08:12





U hebt een NameVirtualHost zonder een overeenkomende vermelding van VirtualHost.

Dit is meestal niet dodelijk, alleen een informatieve fout.


3
2018-04-30 18:22





Het is omdat je NameVirtualHost-regel een poortnummer bevat (:80), maar je VirtualHost-secties niet.


3
2018-04-30 18:42





AS Rune vermeldt op Debian-systemen NameVirtualHost verschijnt in veel bestanden - ports.conf, conf.d / virtual.conf en mogelijk uw eigen conf-bestanden int-sites beschikbaar

Zorg ervoor dat het op één plaats bestaat als NameVirtualHost *: 80 (de mijne staat in conf.d / virtual.conf) en de waarschuwingen moeten verdwijnen.

Zoals vermeld, moet u ook de VirtualHost-richting bepalen voor elke site die beschikbaar is, dit formaat hebben <VirtualHost *:80>


2
2017-11-15 14:19





Ik heb hetzelfde probleem, maar ik schakel de standaardsite van Apache op een bepaald moment uit. Ik typ zoiets

# a2dissite default

Nadat ik probeer Apache 2 opnieuw te starten, ontvang ik het volgende bericht:

"[warn] NameVirtualHost *: 80 heeft geen VirtualHosts"

Vervolgens schakel ik de 'standaard'-site van Apache 2 weer in en alles werkt weer, het gebruikte commando is:

# a2ensite default

Dat is alles Mensen!


2
2018-03-31 19:53



Dit was het beste advies. - jini
Geweldig advies, ik gebruik zpanelCP en niets werkte maar dit. bedankt ! :) - Eliran Efron