[warn] NameVirtualHost *:80 has no VirtualHosts

Huschi

Moderator
Wer kennt diese Warnung bei einem Apache-Restart nicht?
Code:
[warn] NameVirtualHost *:80 has no VirtualHosts

Zufällig bin ich heute über die Lösung gestolpert:
Die Anweisung 'NameVirtualHost *:80' (egal ob mit oder ohne IP) darf innerhalb der Apache-Configuration je IP & Port nur einmal vorkommen!

In einer standard-Installation von Confixx steht diese Zeile aber jeweils in httpd.conf und confixx_vhost.conf.

Die Lösung:
Da confixx_vhost.conf automatisch geschrieben wird, wird die Zeile einfach in httpd.conf auskommentiert.
Das selbe Problem stellt sich übrigends bei webmin. Hier wird die Zeile auch jedesmal in die Config-Datei (bei mir webmin_vhost.conf) eingetragen.
Wer VirtualHost sowohl mit Confixx und Webmin verwaltet hat demnach Pech!

Getestet ist diese Lösung übrigends unter Apache 1.3.x und 2.0.48

huschi.
 
Mhh... Kennt jeder :rolleyes:
Aber wenn die kommt, mach ichs nochmal und fertig. Is doch nix Gravierendes - ODER? :confused:
 
SGD said:
Aber wenn die kommt, mach ichs nochmal und fertig.
Äh, was machst Du nochmal ?


"Apache/2.0.50 (RedHat 9/Server4You)" : funktioniert auch damit. Meldung beim Apache-Restart ist weg. Keine Auffälligkeiten beobachtet.
 
SGD said:
Apache restarten
Die Meldung kommt doch bei JEDEM Restart, weil es nun mal in der http.conf doppelt drin steht. Zumindest war das bei mir so (vor Huschis genialem Tipp) :confused:
 
Huschi said:
Da confixx_vhost.conf automatisch geschrieben wird, wird die Zeile einfach in httpd.conf auskommentiert.

:cool: So konnte ich das Problem auch lösen. Diese Fehlermeldung lässt nicht gerade so etwas schließen.

Thomas
 
hallo,,, habe das gleiche problem..

lief doch alles ganz gut bis ich es gemacht habe was daoben steht

kommt aber immer noch
[warn] NameVirtualHost 212.227.85.191:80 has no VirtualHosts
done


und nun ist der webserver nicht erreichbar

habe es dann zurück gestellt und nichts geht :(
 
Ihr sollt port :80 weg lassen un da hab ich beispiel für routern zu Hause
Code:
httpd.conf

UseCanonicalName On  MACHEN 

#
# Use name-based virtual hosting.
#
NameVirtualHost 212.12.13.14
NameVirtualHost 192.168.1.2
#
# NOTE: NameVirtualHost cannot be used without a port specifier 
# (e.g. :80) if mod_ssl is being used, due to the nature of the
# SSL protocol.
#

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
<VirtualHost 192.168.1.2 212.12.13.14>
    ServerAdmin [email]webmaster@dummy-host.example.com[/email]
    DocumentRoot /var/www/html
    ServerName domain.de
    ErrorLog /home/domain/logs/www.domain.de-error_log
    CustomLog /home/domain/logs/www.domain.de-access_log common
</VirtualHost>
 
Last edited by a moderator:
Meine Lösung

[warn] NameVirtualHost *:0 has no VirtualHosts

Hat mich auch gerade sehr umgetrieben, ich habe weder confixx noch webmin. Apache restart nutzte auch nicht.
In einem amerikanischen Forum fand sich dann der entscheidenende Hinweis. Die Konfiguration in der datei '000-default' wird miteingelesen. Wenn man also in seiner virtualhost Datei, die erste Zeile:
NameVirtualHost *
aus dieser Datei übernimmt, wird sie doppelt gelesen.
Die Lösung: in der eigenen Datei diese erste Zeile rauslöschen.
Nach einen Neustart kommt die Meldung nicht mehr.
 
Ein paar mehr Informationen über dein System wären mehr als hilfreich.

P.S. hast du mal auf das Datum des Postings geschaut? *scnr*
 
Bei Debian ist die httpd.conf ungenutzt. Aber wer ein wenig im selben Verzeichnis rum sucht, findet schon die richtige Datei.

huschi.
 
Hallo Manuela,

schau mal in die Datei:
/usr/share/doc/apache2/NEWS.Debian.gz

The directive "NameVirtualHost *" has been changed to "NameVirtualHost
*:80". It has also been moved from sites-available/default to ports.conf.
This allows to ship a proper SSL default virtual host config in
sites-available/default-ssl, but it means that if you use several name
based virtual hosts:

- you will have to change <VirtualHost *> to <VirtualHost *:80> in your
name based virtual hosts

- you need to add more NameVirtualHost directives if you use other ports
than 80 with name based virtual hosts. You may also have to add these
ports to the default virtual host in /etc/apache2/sites-available/default
(like this: "<VirtualHost *:80 *:81>")
 
Back
Top