fsockopen 返回“bool(false)”来自浏览器,但“资源(4)类型(流)”从命令行
我无法在 SugarCRM 中发送邮件。 Suagrcrm 使用 SMTP 通过 phpmailer 发送邮件。我发现当尝试使用 fsockopen 打开套接字连接时会发生错误。对 fsockopen 的调用返回布尔值 (false)。
提供给 fsockopen 的参数是 5 个变量,包含以下值 'mail.example.com'(主机名), 25(端口), ''(errno), ''(errstr), 10(超时)
错误消息为代码:10107 回复:本不应该失败的系统调用失败了。
错误代码出现在 Microsoft 网站的“Windows 套接字错误代码”下,部分解释为:当提供程序未返回 SUCCESS 且未提供扩展错误代码时返回。可以指示服务提供程序实现错误。
当我从浏览器调用脚本时会出现此问题。如果我从命令行执行脚本,fsockopen 将返回一个资源。
节目信息:Windows XP
Apache/2.0.63 (Win32) mod_ssl/2.0.63 OpenSSL/0.9.8i PHP/5.2.8 服务器
PHP 版本 => 5.2.8
任何人都可以针对此问题提出任何可能的解决方案吗?预先感谢您的任何建议。
I cannot send mail in sugarcrm. Suagrcrm sends mail with phpmailer using SMTP. I have identified that the error occurs when an attempt to open a socket connection using fsockopen is made. The call to fsockopen returns boolean (false).
The arguments given to fsockopen are 5 variables containing the following values'mail.example.com'(hostname), 25(port), ''(errno), ''(errstr), 10(timeout)
The error message isCode: 10107 Reply: A system call that should never fail has failed.
The error code is present in microsoft website under 'Windows Sockets Error Codes' and is partly explained as:Returned when a provider does not return SUCCESS and does not provide an extended error code. Can indicate a service provider implementation error.
The issue occurs when I call the script from a broswer. If I execute the script from command line, fsockopen returns a resource.
Program Info:Windows XP
Apache/2.0.63 (Win32) mod_ssl/2.0.63 OpenSSL/0.9.8i PHP/5.2.8 Server
PHP Version => 5.2.8
Can anyone suggest any possible solutions for this issue. Thanks in advance for any suggestion.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在Windows下运行时,尝试端口587而不是25!
When running under windows, try port 587 instead of 25!
该错误是由于用作 Web 服务器的系统中存在防火墙而导致的。当我卸载防火墙后,它工作得很好。
The error was caused due to the presence of a firewall in the system used as the web server. It worked fine when I uninstalled the firewall.