警告:stream_socket_enable_crypto():此流不支持第 197 行 C:\xampp\htdocs\12work\class.smtp.php 中的 SSL/加密
Posted
技术标签:
【中文标题】警告:stream_socket_enable_crypto():此流不支持第 197 行 C:\\xampp\\htdocs\\12work\\class.smtp.php 中的 SSL/加密【英文标题】:Warning: stream_socket_enable_crypto(): this stream does not support SSL/crypto in C:\xampp\htdocs\12work\class.smtp.php on line 197警告:stream_socket_enable_crypto():此流不支持第 197 行 C:\xampp\htdocs\12work\class.smtp.php 中的 SSL/加密 【发布时间】:2013-02-05 08:55:49 【问题描述】:我正在使用 XAMPP,尝试通过 localhost
发送电子邮件时收到以下警告:
警告:
stream_socket_enable_crypto()
:此流不支持在线C:\xampp\htdocs\12work\class.smtp.php
中的SSL/加密 197
这是我的代码:
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "smtp.gmail.com"; // specify main and backup server
$mail->SMTPAuth = true;
$mail->Port = 25;
$mail->SMTPSecure = "tls";
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = "sheikh.abm@gmail.com"; // SMTP username
$mail->Password = "mypassword"; // SMTP password
$mail->From = "sheikh.abm@gmail.com"; //do NOT fake header.
$mail->FromName = "MailMan";
$mail->AddAddress("sheikh.abm@gmail.com"); // Email on which you want to send mail
$mail->Ishtml(true);
$mail->Subject = "Just a Test";
$mail->Body = "Hello. I am testing <b>PHP Mailer.</b>";
if(!$mail->Send())
echo $mail->ErrorInfo;
else
echo "email was sent";
【问题讨论】:
当我在 Centos 上将我们的 Php 从 5.3.1 升级到 5.5 时,这个问题就消失了 【参考方案1】:好的,我们需要启用 Open SSL 模块。操作方法如下:
-
找到并打开您的
php.ini
文件
搜索线路:;extension=php_openssl.dll
通过删除 ;
字符启用模块。
保存文件并重新启动 Apache。
提示:
如果您对php.ini
文件不熟悉,建议修改前创建备份。 Ini 是一个配置文件,错误配置或损坏的 ini 会导致该 Web 服务器无法启动。
如果您使用 LAMP 堆栈(例如 wamp),应该可以通过图形界面启用模块。
更多关于php.ini
:https://secure.php.net/manual/en/configuration.file.php
【讨论】:
如果我删除;它给了我这个错误 SMTP 错误:无法验证。 'php_openssl.dll' 部分帮我完成了 我试过了,但现在我得到了PHP Startup: openssl: Unable to initialize module
【参考方案2】:
在我的本地系统中,avast mail shield 打开了,一旦我禁用它,我就不允许通过 smtp gmail 发送任何邮件,邮件是通过 smtp 在本地系统中发送的
【讨论】:
嘘!你拯救了我的一天。【参考方案3】:只是一个简短的说明,
你用$mail->Port = 25;
$mail->SMTPSecure = "tls";
gmail /tls 的端口应该是 587 见https://support.google.com/mail/answer/78775?hl=el
【讨论】:
【参考方案4】:在我的本地系统中,我的计算机上有 avast 防病毒软件,一旦我禁用它,我就不允许通过 SMTP Gmail 发送任何邮件,这些电子邮件是通过 SMTP 在本地系统中发送的
【讨论】:
【参考方案5】:我解决了这个
关闭 selinux
#setenforce 0
【讨论】:
以上是关于警告:stream_socket_enable_crypto():此流不支持第 197 行 C:\xampp\htdocs\12work\class.smtp.php 中的 SSL/加密的主要内容,如果未能解决你的问题,请参考以下文章