Question Erreur Apache «Impossible de déterminer de manière fiable le nom de domaine complet du serveur»


Lorsque je redémarre mon serveur Apache en utilisant la commande

sudo /etc/init.d/apache2 restart

Je reçois l'erreur suivante:

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

Le serveur utilise-t-il 127.0.1.1 au lieu de 127.0.0.1? Quelle est la cause de cette erreur?


385
2018-02-14 13:09


origine




Réponses:


13.04 et plus

Ceci est juste un avertissement amical et pas vraiment un problème (comme si quelque chose ne fonctionnait pas).

Si vous insérez un

ServerName localhost   

Dans les deux cas httpd.conf ou apache2.conf dans /etc/apache2 et redémarrer apache l'avis disparaîtra.

Si vous avez un nom à l'intérieur /etc/hostname vous pouvez également utiliser ce nom au lieu de localhost.


Et il utilise 127.0.1.1 si c'est à l'intérieur de votre /etc/hosts:

127.0.0.1 localhost
127.0.1.1 myhostname

Méthode préférée

Dépannage d'Apache

Si vous obtenez cette erreur:

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

puis utilisez un éditeur de texte tel que "sudo nano" sur la ligne de commande ou "gksudo gedit" sur le bureau pour créer un nouveau fichier,

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

ou

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

puis ajouter

ServerName localhost

au fichier et enregistrer. Cela peut être fait en une seule commande avec les éléments suivants:

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

Mais sur Ubuntu 14.04:

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

N'oubliez pas le ".conf" (sans ne fonctionnera pas).


470
2018-02-14 13:18



Ceci est également mentionné dans la documentation de configuration d'Ubuntu LAMP pour Dépannage d'Apache. Là, ils recommandent de créer un fichier /etc/apache2/conf.d/fqdn avec ServerName localhost dedans - icc97
Très bonne réponse - mais je vous recommande également de le mettre dans le répertoire conf.d :) - cwd
/etc/apache2/conf.d/ n'existe pas après mon installation de lamp-server^ dans 14.04 - redanimalwar
@redanimalwar Pour 13.10 et plus récent voir @ Réponse de Starx au dessous de. - Dan
Pour la toute dernière étape (création de sym-link en 14.04), je vous recommande sudo a2enconf fqdn bien que ce soit techniquement le même. - yoshi


13.10 ou plus récent

À partir d’Apache 2.4 - qui est disponible par défaut à partir de 13.10 - vous ne pouvez pas utiliser la méthode pour ajouter un fichier de configuration dans le fichier. conf.d annuaire.

Apache n'utilise plus le conf.d annuaire. Tous les fichiers de configuration sont stockés à l'intérieur /etc/apache2/conf-available répertoire et tous les fichiers de configuration devraient maintenant avoir un .conf extension.

Pour résoudre ce message dans Apache 2.4, nous devons créer un fichier de configuration dans le répertoire conf-available. Par exemple servername.conf.

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

Et à l'intérieur, il suffit d'ajouter une ligne

ServerName localhost

Vous pouvez combiner les deux commandes précédentes en une avec:

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

Si vous souhaitez utiliser un nom de domaine ou tout autre nom en fonction de l'exigence, remplacez-le simplement. localhost avec tout ce dont vous avez besoin. Ensuite, vous devez activer cette configuration. Pour cela, vous devez exécuter la commande suivante:

sudo a2enconf servername

a2enconf est une commande pour activer un fichier de configuration dans Apaches 2.4. Notez également que servername sur la commande ci-dessus est du nom du fichier de configuration servername.conf. Si votre fichier de configuration était ngenericserver.conf alors vous devriez écrire sudo a2enconf ngenericserver.

Après cela, rechargez le serveur et le message ci-dessus ne vous posera plus de problème.

sudo service apache2 reload

ou

sudo apache2ctl graceful

Maintenant, après cela, vous verrez que le message ne sera plus affiché et le problème sera résolu.


158
2017-12-26 18:45



Est-ce que quelqu'un sait comment faire dire à Apache lequel fichier de configuration, il a le problème avec? Je ne sais pas pourquoi les développeurs ne pensent jamais à mettre cela dans leurs messages d'erreur - cela prend à peine beaucoup de code! - John Y
Si j'ai un fqdm Internet pour ce serveur, est-ce que c'est l'endroit pour le mettre? Par exemple, devrais-je substituer myhost.org à la place de localhost? - CPBL
@CPBL Ce sera le nom de serveur par défaut pour tous les sites. Si vous n'avez qu'un seul site, c'est tout ce que vous devez faire. Si vous avez plusieurs sites sur votre serveur, vous devrez également ajouter la directive de nom de serveur pour chaque site dans leur configuration d'hôte virtuel respective. - Dan
Fonctionne sur 14.04 LTS. - Parto
Votre lien cité semble mort, veuillez corriger. - Fredrick Gauss


  • Ouvrir un terminal
  • Ouvrez le /etc/apache2/httpd.conf fichier:

    sudo editor /etc/apache2/httpd.conf # [1]
    
  • Par défaut, il serait vide. Ajoutez simplement la ligne suivante:

    ServerName localhost
    
  • Enregistrez le fichier et quittez

  • Redémarrez le serveur

    sudo service apache2 restart
    

[1] Lancez l'éditeur par défaut, voir sudo update-alternatives --config editor


24
2018-02-14 13:17



après l'exécution de la dernière commande, l'erreur suivante se produit ** Redémarrage du serveur Web apache2 / usr / sbin / apache2ctl: 87: ulimit: limite de définition d'erreur (opération non autorisée) / usr / sbin / apache2ctl: 87: ulimit: autorisé) (13) Autorisation refusée: make_sock: impossible de lier l'adresse 0.0.0.0:80 pas de socket d'écoute disponible, fermeture Impossible d'ouvrir les journaux L'action 'start' a échoué. Le journal des erreurs Apache peut avoir plus d'informations. [échec] ** @ green7 - Deepu
essayez 'sudo service apache2 restart' - waterloo2005


Apache2 peut également obtenir le nom de domaine complet à partir d'un nom d'hôte système correctement configuré plutôt que codé en dur dans le fichier de configuration apache. Le codage en dur entraînera également une confusion si le nom d'hôte change. Vous n'avez en fait pas besoin ServerName directives en httpd.conf ou tout fichier de configuration apache.

Mettez ce qui suit dans /etc/hosts:

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

hostname.domainname.com est le nom de domaine complet de votre machine.

Avec un nom d'hôte correctement configuré dans /etc/hostname/ ou avec hostnamectl, cela aidera également d'autres services sur votre machine à fonctionner correctement (c'est-à-dire l'invite de connexion, montrant This is hostname.domainname.com au lieu de This is hostname.unknown_domain.)


22
2017-09-18 18:05



+1 pour "un nom d'hôte système correctement configuré". Je voulais configurer le serveur correctement. Cela a également corrigé mon erreur dans le journal [warn] RSA server certificate CommonName (CN) <fqdn> does NOT match server name!? - transistor1
Pensez-vous que cela devrait fonctionner avec Apache 2.2.22? J'obtiens toujours "Impossible de déterminer de manière fiable le nom de domaine complet du serveur, en utilisant 127.0.1.1 for ServerName" - David Winiecki
Est hostname localhost censé être myubuntuservername localhost? Ou le littéral de chaîne hostname localhost? Vous n'étiez pas clair dans votre réponse - Jonathan
Cela devrait être la réponse acceptée. Il semblerait que vous deviez associer le nom de domaine complet à l'adresse IP statique plutôt que 127.0.0.1, bien que. - Skippy le Grand Gourou


Dans la nouvelle version d'apache2, vous suivez la commande suivante:

sudo nano /etc/apache2/apache2.conf

Ajoutez la nouvelle fin de ligne suivante du fichier:

ServerName localhost

Puis redémarrez apache2:

sudo service apache2 restart

C'est fait.


15
2018-04-16 06:38





Je trouve que c'est un peu mieux de créer un nouveau fichier dans /etc/conf.d que pour modifier soit apache2.conf ou httpd.conf.

C'est une préférence personnelle qui conserve les modifications de configuration séparées du package de distribution. Les mises à jour sont donc moins compliquées.

Je crée le fichier /etc/apache2/conf.d/AAserverName et il ne contient que:

ServerName myhost.mycomain.tld

Les autres suggestions fonctionnent certainement aussi.


4
2017-09-06 15:31





Dans Ubuntu 16.04:

sudo -i

echo 'ServerName localhost' > /etc/apache2/conf-available/server-name.conf
a2enconf server-name

2
2018-04-17 13:26





Ajouter ServerName localhost

À

 sudo leafpad /etc/apache2/apache2.conf

 sudo leafpad /etc/apache2/httpd.conf

Ce n'est pas une erreur .. C'est juste un rappel ami


1
2017-07-05 09:36





Sur Ubuntu 11.10, j'ai vu ce message, accompagné d'un démarrage bloqué car mon disque était plein. L'un des fichiers journaux était devenu un voyou. Probablement, il n'y avait pas vraiment de problème avec Apache, mais ce message était le dernier indice donné avant le blocage du démarrage.

Pour résoudre le problème, j'ai dû démarrer en mode de récupération et supprimer le fichier journal capricieux.


0
2018-05-07 15:17





En précisant ServerName localhost dans vos fichiers de configuration en dehors des sections de l’hôte virtuel est la manière de procéder.

Certaines autres réponses suggèrent que vous devriez modifier /etc/apache2/httpd.conf. Ce fichier est écrasé lorsque apache est mis à niveau depuis apt. Pour la configuration d'Apache que vous ne voulez pas remplacer, vous devez créer un nouveau fichier. Voici la "méthode Debian" pour modifier cette configuration:

# create the configuration file in the "available" section
echo "ServerName localhost" | sudo tee /etc/apache2/conf-available/servername.conf
# enable it by creating a symlink to it from the "enabled" section
sudo a2enconf servername
# restart the server
sudo service apache2 restart

Ceci est fondamentalement la même que la réponse de Stark, mais dans un formulaire de script facile à copier et à coller. J'avais initialement posté ceci dans une question qui était marquée comme duplicata: https://askubuntu.com/a/432408


0
2018-03-24 13:02