Cela semble être un problème avec Apache2 et éventuellement resolv.conf d'après ce que j'ai lu jusqu'à présent.
Nous avons une API web basée sur PHP fonctionnant sur Ubuntu 14.04 LTS qui communique parfois avec une autre API web. Cela fonctionnait parfaitement depuis plus d'un an maintenant - jusqu'à hier.
Hier (mercredi) matin, nous avons commencé à obtenir des exceptions avec la deuxième connexion - PHP produit l'erreur :
getaddrinfo "Pas d'adresse associée à l'hôte"
C'est la façon dont PHP dit qu'il ne peut pas résoudre le nom d'hôte via le DNS.
J'ai ouvert une session sur le serveur et lancé un nslookup
pour le domaine demandé par le script PHP : il a été résolu.
J'ai entré en mode interactif PHP et appelé dns_get_record()
pour le domaine demandé par le script PHP : il a été résolu.
Après avoir cherché un peu sur internet, tout ce que j'ai pu trouver était un message obscur disant que quelqu'un d'autre avait eu le même problème parce qu'Apache se chargeait avant resolv.conf, donc cela avait été résolu en redémarrant/rechargeant Apache. J'ai rechargé le service Apache et tout fonctionnait bien.
Nous venons d'avoir le même problème ce matin... le rechargement a de nouveau résolu le problème.
Maintenant - le serveur est en ligne depuis 23 jours maintenant. Le service Apache a été redémarré dimanche matin, probablement après quelques mises à jour automatiques. Le problème est apparu pour la première fois mercredi matin et s'est répété jeudi matin (ce matin).
Pourquoi Apache oublie soudainement comment résoudre ce nom de domaine de service web qu'il utilise depuis un an ?
- Ubuntu 14.04.5 LTS
- PHP 5.5.9-1ubuntu4.21
- Apache/2.4.7