一尘不染

未启用PHP中的套接字传输“ ssl”

php

我在启用PHP中的套接字传输“ ssl”时遇到麻烦。运行脚本时,出现错误:

警告:fsockopen()[function.fsockopen]:无法连接到ssl://www.my.site.com:443(无法找到套接字传输“
ssl”-配置PHP时是否忘记启用它? )

我正在Windows上运行IIS6,这是我到目前为止为使其正常工作所做的工作:

  • 取消对php.ini中的php_openssl.dll和php_sockets.dll扩展的注释
  • 确保PHP正在加载我更改过的ini文件(确实是,并且肯定正在加载其他扩展名,所以我很确定这不是问题)
  • 确保php_openssl.dll和php_sockets.dll在正确的位置
  • 将ssleay32.dll和libeay32.dll复制到主PHP文件夹,WINDOWS文件夹和WINDOWS / system32文件夹
  • 确保Windows路径变量包含PHP的位置
  • 确保所有相关文件的文件权限均正确。

在进行几乎所有更改之后,我都重新启动了IIS,但是我没有任何运气。有什么明显的地方我做错了吗?无论如何,是否有在较小的部分进行故障排除的方法?(所以我可以通过消除过程来解决问题…?)

不幸的是,Windows / IIS并不是我的专业领域,因为没有其他人似乎对此一无所知,所以我一直负责Windows / IIS。


阅读 280

收藏
2020-05-29

共1个答案

一尘不染

成功!

在检查日志文件并确保对php_openssl.dll的权限正确之后,我搜索了警告并找到了更多尝试的方法。

所以我:

  • 在Windows路径中添加了C:\ PHP \ ext
  • 将libeay32.dll和ssleay32.dll添加到C:\ WINDOWS \ system32 \ inetsrv
  • 重新启动服务器

我不确定哪一个可以解决我的问题,但是现在已经确定了!:)

我发现可以在此页面上尝试这些操作:http
:
//php.net/manual/zh/install.windows.extensions.php

谢谢你的帮助!

2020-05-29