¿Lo estás probando en local, o usas un servidor gratuito? ¿Has probado si te funciona con hotmail, yahoo, etc? ¿Qué versión de PHP tienes?
Mira, te digo mi configuración, que es prácticamente la que viene por defecto :
Versión PHP : 5.2.14
Versión php_openssl.dll : 5.2.14.14
php.ini
Cita: [mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
...
extension=php_openssl.dll // descomentado obviamente
httpd.conf (Apache)
Cita: #LoadModule ssl_module modules/mod_ssl.so // comentado
... // más abajo...
# Secure (SSL/TLS) connections
#Include conf/extra/httpd-ssl.conf
#
# Note: The following must must be present to support
# starting without SSL on platforms with no /dev/random equivalent
# but a statically compiled-in mod_ssl.
#
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
No tengo nada más. No he hecho nada más.
Otra opción que podrías probar, es darle más tiempo de espera a la aplicación. Ve a class.smtp.php, y busca la línea
Código PHP:
public function Connect($host, $port = 0, $tval = 30) {
cambia $tval = 30, por $tval = 60, o un número mayor (en segundos), e intenta de nuevo, ya que en el error de apache, la conexión ssl superó el tiempo de espera límite.
También entra a esta página y verifica que tus puertos realmente estén abiertos (el que no tengas un firewall activado o un antivirus corriendo no implica que los puertos estén abiertos) :
http://www.pcwintech.com/simple-port-tester
Es un pequeño programita, donde le agregas el puerto que será testeado (para TCP y UDP). De esta manera sabrás si está cerrado o no, aunque esto es necesario si usas router, pero podrías tener alguna otra aplicación corriendo que utilice el puerto.
De verdad espero soluciones tu problema. Mi ayuda no es más que una ayuda superficial. Algo debe estar pasando en tu máquina, y me es imposible verlo, así que tenemos que agotar todas las opciones.
Saludos.