7
votes

Php imap_open (): Spécification à distance non valide lorsque vous essayez de se connecter à gmail

J'essaie de revenir des mails de Gmail et j'ai obtenu l'erreur suivante:

openssl
OpenSSL support enabled
OpenSSL Library Version OpenSSL 0.9.7l 28 Sep 2006
OpenSSL Header Version

imap

IMAP c-Client Version   2007e
Kerberos Support    enabled


1 commentaires

Je chercherais imap_errors et peut-être Alertes. Toutefois, si cela se trouve sur la couche réseau (indice: SSL), vous pourriez avoir besoin d'une mise à jour de votre SSL Libs.


3 Réponses :


4
votes

J'ai eu un problème similaire. Je peux vous dire de l'expérience personnelle que lorsque vous puissiez installer IMAP et OpenSSL, vous devrez peut-être recompiler l'installation PHP "--with-imap-ssl [= dir]." Je voulais faire la même chose et recevoir la même erreur. J'ai également eu les mêmes versions OpenSSL et IMAP installées. J'ai recompanté php, et voici ma configuration:

./ configure --prefix = / usr / local / apache2 / php - -with-imap = / usr / local / imap-2007f / - -with-curl = / usr / usr / local / curl / Sockets --With-IMAP-SSL = / USR / local / SSL --With-OpenSSL --With-APXS2 = / USR / local / Apache2 / bin / APXS --WithHOt-Kerberos - Outre-iconv

Vous n'avez pas besoin d'utiliser la même configuration, car il est personnalisé pour ce dont j'ai besoin.

Si vous n'êtes pas familier avec la compilation de PHP, vous pouvez trouver la source ici:
http://www.php.net/downloads.php
Voici un didacticiel de base sur la compilation de PHP et Apache, en supposant que vous soyez sur UNIX. Il comprend également comment les compiler avec CURL, vous pouvez utiliser toutes les instructions de boucle et les remplacer avec SSL et IMAP respectivement et cela devrait fonctionner. http://thermo.sdsu.edu/testhome/phpinstall.html


1 commentaires

Correction du problème que j'avais - eu OpenSSL ainsi que IMAP activé, mais obteniez toujours l'erreur. Re-compilé PHP --With-IMAP-SSL et travaille maintenant.



0
votes
 $iconnect = imap_open("{imap.gmail.com:993/ssl/novalidate-cert}INBOX","user@gmail.com","passwordofuser") or die(imap_errors());
Check this code this will connect to gmail server .

0 commentaires

0
votes

Pour Docker j'ai appris que cette erreur se produit lors de l'appelant docker-php-ext-installer avant docker-php-ext-configure , que j'ai fait par erreur. Donc la directive exécuter dans le dockerfile doit ressembler à ceci: xxx

au lieu de xxx

Sinon, l'extension IMAP semble être installée - des appels tels que fonction_exists ('imap_open') retourneront true. Mais tous les appels vers imap_open échouera avec l'erreur mentionnée:

Spécification à distance non valide

même s'il s'agit d'une spécification distante correcte qui a été largement approboven comme {imap.gmail.com:993/imap/ssl/novovalidate-cerler/norsh} Inbox ou {imap.gmail.com:993/imap/ssl} Inbox par exemple Cet article . Assurez-vous donc que vous avez d'abord configurer puis installez l'extension.


0 commentaires