作者:手机用户2502929925 | 来源:互联网 | 2023-07-18 14:31
请帮我解决MacOS上的问题,当我在我的窗口上打字时,它可以正常工作.我试试我的Mac,它显示“无法打开套接字”.每个人都可以帮助我.publicfunctionindexActi
请帮我解决Mac OS上的问题,当我在我的窗口上打字时,它可以正常工作.
我试试我的Mac,它显示“无法打开套接字”.
每个人都可以帮助我.
public function indexAction(){
$mail = new Mail\Message;
$mail->setFrom('paradise.losebaby@gmail.com','Flyoverfly Training');
$mail->addTo('thanhbvh@yahoo.com.vn','maithanh');
$mail->setSubject('Xác nhận việc phục hồi mật khẩu');
$mail->setBody('maithanh');
$transport = new SmtpTransport;
$option = new SmtpOptions(array(
'name' => 'smtp.gmail.com',
'host' => 'smtp.gmail.com',
'port' => 465,
'connection_class' => 'login',
'connection_config' => array(
'username' => 'myemail@gmail.com',
'password' => 'mypass',
'ssl' => 'ssl'
)
));
$transport->setOptions($option);
$transport->send($mail);
return new ViewModel;
}
解决方法:
可能是防火墙问题.但是我很确定你的操作系统上没有安装/启用php-openssl.在引擎盖下,Zend将调用stream_socket_client()以连接到远程服务器.
由于通过Gmail发送电子邮件需要安全层(SSL / TLS),stream_socket_client()将需要开放的ssl支持(ssl://).
所以你必须在操作系统上有ssl支持,检查:
或获取受支持的套接字传输列表:
这里有一些有用的链接:
> Roll your own PHP to support OpenSSL instead of Secure Transport (Mac)
> How to upgrade OpenSSL in OS X?
> Important note for curl users on OS X Mavericks 10.9
> fsockopen() (go to hostname option for details)
> Can’t run Composer on my Mac Mountain Lion – openssl extension
> OpenSSL support in PHP under MAMP
> OpenSSL Version MacOSX Homebrew
> Building OpenSSL on your Mac (MacOS X)
> Zend Mail Abastract Protocol (stream_socket_client under the hoods)
> stream_socket_client()
> OpenSSL installation
> Net Transports
> stream_get_transports()