Windows上的PHP open_ssl,ftp_ssl_connect

时间:2016-11-22 17:02:25

标签: php windows php-openssl

我在php中有一个需要使用ftp_ssl_connect连接到ftp的函数。我使用Windows 7并根据谷歌的答案我需要重建PHP以包括ssl函数。现在我的问题是否有办法在Windows上启用ssl而无需重建php?或者是否有一个不可加载的版本,其中ssl已包含在Windows中?

感谢

2 个答案:

答案 0 :(得分:0)

来自PHP doc

  

注意:为什么此功能可能不存在

     

ftp_ssl_connect()仅在ftp模块和   OpenSSL支持静态内置到php中,这意味着就可以了   Windows这个函数将在官方PHP版本中未定义。至   在Windows上提供此功能,您必须编译自己的PHP   二进制文件

强调我的。

但是,我已经从官方php.net下载了用于Windows的PHP二进制文件,我注意到有一个特定的DLL(ext / php_openssl.dll)用于openssl。这意味着可能没有必要重建PHP以获得openssl工作。请记住在php.ini文件中为dll添加一个条目。 它应该是这样的:

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
extension_dir = "ext"

...
extension=php_openssl.dll

注意

我还没有测试过上述情况。

答案 1 :(得分:0)

从PHP 7.0开始,Windows上的核心FTP扩展默认使用OpenSSL支持构建。在早期的PHP版本中,虽然可以支持SSL,但由于各种原因,它不提供标准版本。 PHP 5的唯一解决方案是自定义构建PHP,而在windows.php.net上构建标准PHP 7.0则提供ftp_ssl_connect()函数。

感谢。