13.04 und älter

13.04 und älter

Wenn ich meinen Apache-Server mit dem Befehl neu starte

sudo /etc/init.d/apache2 restart

Ich erhalte die folgende Fehlermeldung:

Restarting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2:
Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

Verwendet der Server 127.0.1.1 statt 127.0.0.1? Was verursacht diesen Fehler?

Antwort1

13.04 und älter

Dies ist nur eine freundliche Warnung und kein wirkliches Problem (im Sinne von, dass etwas nicht funktioniert).

Wenn du nach ... gehst:

/etc/apache2/apache2.conf

und einfügen:

ServerName localhost   

und starten Sie Apache dann neu, indem Sie Folgendes in das Terminal eingeben:

sudo systemctl reload apache2

der Hinweis verschwindet.

Wenn ein Name darin enthalten ist, /etc/hostnamekönnen Sie diesen Namen auch anstelle von verwenden localhost.


Und es wird verwendet 127.0.1.1, wenn es sich in Ihrem befindet /etc/hosts:

127.0.0.1 localhost
127.0.1.1 myhostname

Bevorzugte Methode

Fehlerbehebung bei Apache

Wenn dieser Fehler auftritt:

apache2: Could not determine the server's fully qualified domain name, 
using 127.0.0.1 for ServerName

Verwenden Sie dann einen Texteditor wie „sudo nano“ in der Kommandozeile oder „gksudo gedit“ auf dem Desktop, um eine neue Datei zu erstellen,

sudo nano /etc/apache2/conf.d/fqdn

oder

gksu "gedit /etc/apache2/conf.d/fqdn"

dann füge hinzu

ServerName localhost

in die Datei und speichern. Dies alles kann mit einem einzigen Befehl wie folgt erledigt werden:

 echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdn

Aber unter Ubuntu 14.04:

 echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/fqdn.conf
 sudo a2enconf fqdn

Vergessen Sie nicht die „.conf“ (ohne geht es nicht).

Antwort2

13.10 oder neuer

Ab Apache 2.4 – standardmäßig verfügbar ab 13.10 – können Sie die Methode zum Hinzufügen einer Konfigurationsdatei im conf.dVerzeichnis nicht mehr verwenden.

Apache verwendet das Verzeichnis nicht mehr conf.d. Alle Konfigurationsdateien werden im /etc/apache2/conf-availableVerzeichnis gespeichert und alle Konfigurationsdateien sollten jetzt eine .confErweiterung haben.

Um diese Meldung in Apache 2.4 zu beheben, müssen wir eine Konfigurationsdatei im Verzeichnis conf-available erstellen. Zum Beispiel servername.conf.

sudo vi /etc/apache2/conf-available/servername.conf

Und darin müssen wir nur eine Zeile hinzufügen

ServerName localhost

Sie können die beiden vorherigen Befehle mit einem kombinieren:

echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf

Wenn Sie einen Domänennamen oder einen anderen Namen verwenden möchten, ist das je nach Bedarf in Ordnung. Ersetzen Sie ihn einfach localhostdurch den gewünschten Namen. Als nächstes müssen Sie diese Konfiguration aktivieren. Dazu müssen Sie den folgenden Befehl ausführen:

sudo a2enconf servername

a2enconfist ein Befehl zum Aktivieren einer Konfigurationsdatei in Apaches 2.4. Beachten Sie auch, dass servernameder obige Befehl vom Namen der Konfigurationsdatei stammt servername.conf. Wenn Ihre Konfigurationsdatei ngenericserver.confdies wäre, müssten Sie schreiben sudo a2enconf ngenericserver.

Laden Sie danach den Server neu und die obige Meldung wird Sie nicht mehr stören.

sudo service apache2 reload

oder

sudo apache2ctl graceful

Danach werden Sie feststellen, dass die Meldung nicht mehr angezeigt wird und das Problem behoben ist.

Antwort3

Apache2 kann den FQDN auch von einem richtig konfigurierten Systemhostnamen beziehen, anstatt ihn in der Apache-Konfigurationsdatei fest zu codieren. Eine Festcodierung führt auch zu Verwirrung, wenn sich der Hostname ändert. Sie benötigen eigentlich keine ServerNameAnweisungen httpd.confoder Apache-Konfigurationsdateien.

Tragen Sie folgendes ein /etc/hosts:

# IPv4 and IPv6 localhost aliases
127.0.0.1 hostname.domainname.com  hostname  localhost
::1       hostname.domainname.com  hostname  localhost

wo hostname.domainname.comist der FQDN Ihrer Maschine.

Zusammen mit einem richtig konfigurierten Hostnamen in /etc/hostname/oder mit hostnamectlträgt dies auch dazu bei, dass andere Dienste auf Ihrem Computer ordnungsgemäß ausgeführt werden (z. B. wird die Anmeldeaufforderung This is hostname.domainname.comanstelle von angezeigt This is hostname.unknown_domain).

Antwort4

In der neuen Version von Apache2 müssen Sie nur den folgenden Befehl ausführen:

sudo nano /etc/apache2/apache2.conf

Fügen Sie am Ende der Datei die folgende neue Zeile hinzu:

ServerName localhost

Starten Sie dann Apache2 neu:

sudo service apache2 restart

Es ist fertig.

verwandte Informationen