php初识-email function

最近开始学php,总是遇到很多问题,还好有几个朋友比较熟,推荐了我一些资料,最近也是学的不亦乐乎了。今天刚好遇到一个问题,百度了一下么找到,然后果断google 勉强找到了些英文的。稍有差异,不过也是受益匪浅了。
关于php的email功能:

第一个问题
A PHP Error was encountered
Message: fsockopen() [function.fsockopen]: unable to connect to ssl://smtp.googlemail.com:465 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?)

解决办法:windows下,首先启用php.ini 里面的extension=php_openssl.dll(OpenSSL是一个开放源代码的实现了SSL及相关加密技术的软件包,能够支持ssl工作,php默认是关闭的),然后将php文件夹下的libeay32.dll和ssleay32.dll两个库拷贝到system32下,重启apache搞定。
   

第二个问题
A PHP Error was encountered
Failed to connect to mailserver at "localhost" port 25
天天都有新问题,对这个问题,网上的解决办法都是修改php.ini里面的smtp和smtp_port=25或者用ini_set等函数,但是gmail有些不同,首先它的端口号是465,然后是ssl协议。
我配置了php.ini还是error,最后用类似ini_set的方法解决。我用的是codeigniter2.0.0,,可以在email的class里直接写好,或者用$config变量传递的方法。smtp=‘ssl://smtp.googlemail.com’ smtp_port='465',就ok了。






相关原文:http://www.kernelbd.com/blog/php-scripts/php-fsockopen-openssl/

本文出自 “outlier” 博客,转载请与作者联系!

你可能感兴趣的:(PHP,ssl,Gmail,smtp,休闲)