Eu tenho um script em PHP que está funcionando bem há meses. Recentemente, parou de funcionar.
Este script se conecta ao gmail para enviar um email para meus clientes.
Recentemente, comecei a receber esse erro ao executar o script:
The SMTP connection failed to start [tls://smtp.gmail.com:465]:
fsockopen returned Error Number 0 and Error String 'php_network_getaddresses:
getaddrinfo failed: Temporary failure in name resolution'
Lembre-se de que isso ocorreu com zero alterações de código.
Eu olhei para o meu resolv.conf e parece estar ok:
nameserver 208.67.222.222
Posso executar ping gmail.com:
# ping smtp.gmail.com
PING gmail-smtp-msa.l.google.com (74.125.93.111) 56(84) bytes of data.
64 bytes from qw-in-f111.google.com (74.125.93.111): icmp_seq=1 ttl=247 time=26.7 ms
Eu posso conectar via lynx ao google e outros sites sem nenhum problema.
Eu entrei na minha conta do Gmail sem problemas (nenhum captcha lá também).
Estou no final. Alguém tem alguma ideia?
G-Man
domain-name-system
php
email
smtp
getaddrinfo
GeoffreyF67
fonte
fonte
Respostas:
O PHP está tendo problemas para acessar o / etc / hosts ou o /etc/resolv.conf: há um problema antigo no PHP relacionado a esse erro específico. A correção é tentar reiniciar o Apache ou o que quer que esteja chamando o PHP ou garantir que / etc / hosts e /etc/resolv.conf sejam legíveis pelo que está chamando o PHP.
fonte
Acabei de experimentar o mesmo erro e
fez o truque ...
fonte
Agora, tente usar o Xdebug para ver exatamente onde está o problema ....
Alguma coisa boa nos logs?
fonte
Adicione o código de depuração antes dessa linha para garantir que o script possa resolvê-lo corretamente.
fonte
Eu tive essa falha hoje, no entanto, ocorreu após um evento específico que me faz pensar que posso ter encontrado a causa.
Devido a alguns problemas no equipamento de rede, eu realmente reiniciei o servidor e, quando ele voltou, havia uma conexão de rede incorreta no cabeamento, o que significa que não havia servidor DNS disponível.
Enquanto isso, essa função php foi chamada e depois disso nunca mais funcionou até que eu reiniciei o httpd.
Eu acho que o bug pode estar relacionado a uma falha de rede (onde o DNS não está disponível não apenas, mas inacessível, ou seja, sub-rede incorreta) e quando a rede recupera posteriormente essa função, não procura o DNS novamente.
Este tópico foi há alguns anos atrás, talvez este bug esteja corrigido no PHP?
fonte
Eu estava tendo o seguinte problema ao atualizar o magento 2 para a versão mais recente, então suspeito que seja o problema com a configuração do php.
Resolva-o reiniciando o comando xampp through.
Então tentei o
composer update
comando novamente e funcionou como um encanto.fonte