使用SSL的Fsockopen不能在web上工作,但可以在cli上工作


fsockopen with ssl doesn't work from web, but does from cli

我有一个脚本,通过fsockopen提取数据:$ f = fsockopen (ssl://www.url.org的443美元errno, errstr美元);

如果我在命令行上从脚本运行此命令,$f将返回一个有效的资源。如果我在不使用ssl的情况下运行它,它将返回一个有效的资源。如果我通过web运行它,$f返回布尔值false。

是什么阻止它通过web成功运行?

我能够与服务器系统管理员一起工作并找到问题的原因。

web服务器运行PHP 5.6,但通过SSH运行时,使用PHP 5.3。PHP 5.6上的fsockopen的问题是该服务无法找到全局CA证书。我们必须更新5.6配置来正确配置这些。我猜它是通过命令行在5.3中工作的,因为旧的配置仍然存在。

相关文章: