PHP无法使用TLS连接到SMTP
在PHP中,我在发送电子邮件时遇到以下错误: “fsockopen()[function.fsockopen]:无法连接到tls://smtp.gmail.com:465 (连接超时)” 有人能帮我通过.htaccess文件或dl()以外的任何其他方式动态加载openssl.ddl扩展名吗 我正在使用Yii,我的main.php就是这样:PHP无法使用TLS连接到SMTP,php,ssl,smtp,Php,Ssl,Smtp,在PHP中,我在发送电子邮件时遇到以下错误: “fsockopen()[function.fsockopen]:无法连接到tls://smtp.gmail.com:465 (连接超时)” 有人能帮我通过.htaccess文件或dl()以外的任何其他方式动态加载openssl.ddl扩展名吗 我正在使用Yii,我的main.php就是这样: 'mail' => array( 'class' => 'application.extensions.yii-mail.
'mail' => array(
'class' => 'application.extensions.yii-mail.YiiMail',
'transportType'=>'smtp', /// case sensitive!
'transportOptions'=>array(
//'host'=>$smtp_host,
'host'=>'smtp.gmail.com',
//'username'=>$smtp_username,
'username'=>'mailtest.test10@gmail.com',
//'password'=>$smtp_password,
'password'=>'testtest10',
//'port'=>'543',
'port'=>'465',
'encryption'=>'tls',
//'encryption'=>'ssl',
),
'viewPath' => 'application.views.mail',
'logging' => true,
'dryRun' => false
),
有人能告诉我哪里错了吗……我解决了我的问题。实际上,此配置在本地主机中运行,但在服务器中出现错误。必须更改设置才能在服务器中工作。将主机值更改为localhost,并将用户名和密码更改为与服务器设置中的相同。它现在正在工作。
连接超时
不是您在未加载openssl模块时会遇到的错误,这可能类似于找不到套接字传输“tls”-配置PHP时是否忘记启用它?
我猜您有防火墙阻止您。从运行PHP脚本的同一服务器上,您能否尝试在端口465上打开到smtp.gmail.com的telnet连接?这将告诉您是否有东西阻止了与服务器的连接。