Gdy mój serwer Ubuntu Apache (Apache 2) uruchamia się, pojawia się komunikat ostrzegawczy:
[warn] NameVirtualHost *:80 has no VirtualHosts
Jednak serwer WWW działa dobrze. Co mogę pomylić w konfiguracji mojej witryny, aby wyświetlało mi to ostrzeżenie?
Plik konfiguracyjny, o którym mowa (znajduje się w /etc/apache2/sites-available
), ma brzmienie:
<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>
Czy fakt, że używam, może <Location>
być częścią problemu?
źródło
<VirtualHost _default_ thehostname.com>
Może to być spowodowane tym, że masz dyrektywę NameVirtualHost w więcej niż jednym miejscu.
Nie wiem o innych dystrybucjach, ale w Ubuntu / Debian konfiguracja Apache jest podzielona na kilka plików, więc musisz sprawdzić, gdzie jest duplikacja (httpd.conf, apache2.conf, ports.conf, conf.d / *).
Aha, właśnie znalazłem ten świetny zasób z dodatkowymi informacjami: Typowe błędne konfiguracje Apache .
źródło
NameVirtualHost *:80
zarówno wejście, jakports.conf
i wejścieconf.d/virtualhosts
, co wydaje się być błędem Ubuntu.W pudełku Debian / Lenny: W /etc/apache2/ports.conf znajduje się dodatkowa instrukcja NameVirtualHost - może to być przyczyną tego problemu (ta sama instrukcja znajduje się w / etc / apache2 / sites-available / default) . Skomentowałem to oświadczenie i błąd zniknął.
źródło
Masz NameVirtualHost bez pasującego wpisu VirtualHost.
Zazwyczaj nie jest to błąd krytyczny, tylko błąd informacyjny.
źródło
Jest tak, ponieważ twoja linia NameVirtualHost ma numer portu (
:80
), ale twoje sekcje VirtualHost nie.źródło
Jak wspomniała Rune, w systemach Debiana NameVirtualHost pojawia się w wielu plikach - ports.conf, conf.d / virtual.conf i ewentualnie w twoich plikach conf w witrynach dostępnych
Upewnij się, że istnieje w jednym miejscu jako NameVirtualHost *: 80 (moje jest w conf.d / virtual.conf), a ostrzeżenia powinny zniknąć.
Jak wspomniano, należy również ustawić kierunek VirtualHost dla każdej dostępnej strony w tym formacie
<VirtualHost *:80>
źródło
Mam ten sam problem, ale w pewnym momencie wyłączam domyślną stronę Apache. Piszę coś takiego
Po próbie ponownego uruchomienia Apache 2 pojawia się następujący komunikat:
Następnie ponownie włączam „domyślną” stronę Apache 2 i wszystko znowu działa, użyte polecenie to:
To wszystko ludzie!
źródło