Simplement ce que dit le titre. Vous voulez savoir comment vérifier si la connexion fonctionne et si non, quelle est l'erreur. Btw le serveur SMTP est l'échange 2007.Comment vérifier, par PHP, si mon script se connecte au serveur SMTP
Répondre
Si vous voulez savoir si vous pouvez accéder au serveur SMTP à partir de n'importe où vous exécutez PHP, il vous suffit de vous connecter sur le port approprié (par défaut 25) et voir si vous obtenez un code "220" dans le résultat.
$f = fsockopen('smtp host', 25) ;
if ($f !== false) {
$res = fread($f, 1024) ;
if (strlen($res) > 0 && strpos($res, '220') === 0) {
echo "Success!" ;
}
else {
echo "Error: " . $res ;
}
}
fclose($f) ;
Puisque ceci est très probablement lié à votre autre question: Configure mail server to work with PHP, je vais mettre la réponse ici aussi:
Vous utilisez le package PEAR Mail. La méthode send()
renvoie TRUE en cas de succès, ou un objet PEAR_Error
sinon, qui contiendra les détails de l'échec. Très probablement vous voudriez $ PEAR_Error :: message. Tous les détails ici: Configure mail server to work with PHP
il pourrait être dû à votre port SMTP ne sont pas autorisés sur le pare-feu alors essayez ce script php pour vérifier les ports ouverts, il est avoir le contrôle du port populaire maximale:
<?php
$ports[] = array('host'=>'interspire.smtp.com','number'=>25);
$ports[] = array('host'=>'interspire.smtp.com','number'=>2525);
$ports[] = array('host'=>'interspire.smtp.com','number'=>25025);
$ports[] = array('host'=>'helpme.interspire.smtp.com','number'=>80);
$ports[] = array('host'=>'google.com','number'=>80);
$ports[] = array('host'=>'smtp.gmail.com','number'=>587);
$ports[] = array('host'=>'smtp.gmail.com','number'=>465);
$ports[] = array('host'=>'pop.gmail.com','number'=>995);
$ports[] = array('host'=>'imap.gmail.com','number'=>993);
$ports[] = array('host'=>'ftp.mozilla.org','number'=>21);
$ports[] = array('host'=>'smtp2go.com','number'=>8025);
$ports[] = array('host'=>'relay.dnsexit.com','number'=>25);
$ports[] = array('host'=>'relay.dnsexit.com','number'=>26);
$ports[] = array('host'=>'relay.dnsexit.com','number'=>940);
$ports[] = array('host'=>'relay.dnsexit.com','number'=>8001);
$ports[] = array('host'=>'relay.dnsexit.com','number'=>2525);
$ports[] = array('host'=>'relay.dnsexit.com','number'=>80);
$ports[] = array('host'=>'mail.authsmtp.com','number'=>23);
$ports[] = array('host'=>'mail.authsmtp.com','number'=>25);
$ports[] = array('host'=>'mail.authsmtp.com','number'=>26);
$ports[] = array('host'=>'mail.authsmtp.com','number'=>2525);
foreach ($ports as $port)
{
//$connection = @fsockopen($port['host'], $port['number']);
$connection = @fsockopen($port['host'], $port['number'], $errno, $errstr, 5); // 5 second timeout for each port.
if (is_resource($connection))
{
echo '<h2>' . $port['host'] . ':' . $port['number'] . ' ' . '(' . getservbyport($port, 'tcp') . ') is open.</h2>' . "\n";
fclose($connection);
}
else
{
echo '<h2>' . $port['host'] . ':' . $port['number'] . ' is not responding.</h2>' . "\n";
}
}
?>
Source De: https://www.interspire.com/support/kb/getattachment.php?data=MTA2OHxwb3J0Y2hlY2sucGhw
- 1. Comment vérifier si l'utilisateur se connecte dans une application Web?
- 2. Comment puis-je vérifier si mon serveur de messagerie nécessite une authentification SMTP?
- 3. comment vérifier si l'utilisateur se connecte à moodle?
- 4. SQL Profiler ne se connecte pas à mon serveur
- 5. comment identifier si mon script PHP est hébergé par d'autres
- 6. NHibernate ne se connecte pas au serveur sql
- 7. Le client Flash XMLSocket ne se connecte pas au serveur
- 8. Log4net ne se connecte pas parfois au serveur
- 9. mysql5-client se connecte à mysql4 serveur
- 10. PHP IMAP se connecter au serveur TIMEOUT
- 11. Comment vérifier si mon itérateur ne se trouve sur rien
- 12. web2py - mon application ne se connecte pas
- 13. Comment valider le serveur SMTP
- 14. Apache se connecte au fichier spécifique
- 15. TortoiseSVN ne se connecte pas au référentiel
- 16. php: téléchargement forcé sur mon propre serveur - vérifier si le fichier existe?
- 17. Comment mon script PHP peut-il indiquer si le serveur est occupé?
- 18. PHP cURl: Puis-je vérifier si mon agent utilisateur fonctionne?
- 19. WCF - Qui se connecte à moi
- 20. PHP vérifier si le fichier existe sur mon serveur, basé sur une URL complète
- 21. configuration serveur SMTP dans php geekmail
- 22. Comment automatiser mon script cron php
- 23. phpmyadmin en utilisant mysqli se connecte, mais mon php en utilisant les erreurs mysqli sur
- 24. Je reçois une exception lorsque mon client tcp se connecte au serveur avec l'adresse IP, mais fonctionne avec "localhost"
- 25. Comment construire un serveur smtp?
- 26. UNIX Script qui vérifie chaque minute qui se connecte et se déconnecte?
- 27. comment vérifier si le script ruby est exécuté en arrière-plan à partir du script PHP?
- 28. Comment vérifier si un programme se termine?
- 29. comment connaître le nom de serveur SMTP de mon FAI?