Zend Mail in Gmail SMTP
Hallo, ich bin versucht, senden Sie einige E-Mails über gmail von Zend_Mail-Modul.
Das ist mein code:
$config = array(
'ssl' => 'tls',
'port' => 587,
'auth' => 'login',
'username' => '[email protected]',
'password' => 'password'
);
$smtpConnection = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config);
Fehler:
Warnung: stream_socket_enable_crypto() [streams.crypto]: dieser stream unterstützt keine SSL/crypto /library/Zend/Mail/Protocol/Smtp.php auf der Linie 206
Keine Verbindung per TLS
Versuchte ich zu sagen, meine hosting-provider zu ermöglichen openssl.dll in phi.ini
Aber Sie sagen, dass ist nicht notwendig, da der server in Linux, und es muss nicht zu aktivieren openssl.dll arbeiten mit TLS oder SSL.
Ist mein hosting-provider falsch oder habe ich da etwas falsch in meinem code.
Vielen Dank im Voraus
Fabian
InformationsquelleAutor | 2009-07-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
openssl.dll ist die windows-openssl-Erweiterung.
Unter Linux müssen Sie zum kompilieren von PHP mit OpenSSL-Unterstützung.
http://www.php.net/manual/en/openssl.installation.php
Müssen Sie OpenSSL für PHP-sockets und stream-Funktionen für die Verwendung von TLS. Zend nutzt diese Funktionen und erfordern daher eine die gleichen.
Sie müssen eigentlich zwei Dinge, OpenSSL-und TLS-registriert werden soll, als stream/socket transport. Dies sollte gefunden werden unter: Registered Stream Socket Transports Der OpenSSL gefunden werden sollte, die unter eigenen header, denn es ist ein aktivierter Erweiterung. Die apache2handler zeigt der apache-config, nicht in PHP. So haben Sie OpenSSL kompiliert auf dem server und den apache konfiguriert, es zu benutzen, aber Sie haben wahrscheinlich nicht die OpenSSL PHP-Erweiterung kompiliert mit PHP. Suchen Sie Ihre PHP.ini für OpenSSL und sehen, wenn Sie es finden.
Ja ich habe nur: Registered Stream Socket Transports tcp, udp, unix, udg und keine header für OpenSSL. ALSO ich denke das problem war das alle auf meinem hosting-provider-Seite. ich danke Ihnen sehr für Ihre Hilfe
Ja, Sie müssen Fragen Sie Ihren host neu kompilieren von PHP mit OpenSSL-Unterstützung. OpenSSL ist ein bisschen wie ein Schmerz, da kann PHP nicht laden die Erweiterung zur Laufzeit nach Bedarf zusammengestellt, mit den binären.
Aktivieren OpenSSL war was für mich gearbeitet. Danke!
InformationsquelleAutor bucabay
Ich hatte ein ähnliches problem hier ist, was funktioniert;
Mit Zend mail-transport-und-yahoo-smtp:
Dieser erzeugt einen Fehler: "Erlaubnis verweigert" und auch keine mail gesendet wurde. Nach drei Wochen versucht, alle Lösungen die ich finden konnte, der, der gearbeitet wurde, zu ändern:
$transport;
$transport = new Zend_Mail_Transport_Sendmail('[email protected]',$mailhost, $mailconfig);
funktioniert wie erwartet...
InformationsquelleAutor RondyS
Es ist sehr bequem zu bedienen Zend_Mail::setDefaultTransport Methode
InformationsquelleAutor Snowcore
Versuchen, die Einstellung ssl://als Präfix für den Hostnamen und verwenden Sie 465 als port ein.
InformationsquelleAutor Basher