Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP5.6/FreeBSD中的OpenSSL端口_Php_Openssl_Freebsd - Fatal编程技术网

PHP5.6/FreeBSD中的OpenSSL端口

PHP5.6/FreeBSD中的OpenSSL端口,php,openssl,freebsd,Php,Openssl,Freebsd,无法从端口获取OpenSSL以在PHP中工作。FreeBSD 9.1 php-i显示: OpenSSL support => enabled OpenSSL Library Version => OpenSSL 0.9.8x 10 May 2012 OpenSSL Header Version => OpenSSL 1.0.2g 1 Mar 2016 基本系统openssl: # /usr/bin/openssl version OpenSSL 0.9.8x 10 May

无法从端口获取OpenSSL以在PHP中工作。FreeBSD 9.1

php-i显示:

OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 0.9.8x 10 May 2012
OpenSSL Header Version => OpenSSL 1.0.2g  1 Mar 2016
基本系统openssl:

# /usr/bin/openssl version
OpenSSL 0.9.8x 10 May 2012
端口openssl:

# /usr/local/bin/openssl version

    WARNING: can't open config file: /usr/local/openssl/openssl.cnf
    OpenSSL 1.0.2g  1 Mar 2016
模块似乎与适当的库相链接:

# ldd /usr/local/lib/php/20131226-zts/openssl.so
/usr/local/lib/php/20131226-zts/openssl.so:
    libssl.so.8 => /usr/local/lib/libssl.so.8 (0x801224000)
# strings /usr/local/lib/libssl.so.8 | grep OpenSSL
OpenSSLDie
SSLv2 part of OpenSSL 1.0.2g  1 Mar 2016
SSLv3 part of OpenSSL 1.0.2g  1 Mar 2016
TLSv1 part of OpenSSL 1.0.2g  1 Mar 2016
DTLSv1 part of OpenSSL 1.0.2g  1 Mar 2016
OpenSSL 1.0.2g  1 Mar 2016

需要帮助了解为什么php-i显示OpenSSL库版本=>OpenSSL 0.9.8x

浏览php源代码可以发现库版本是通过函数调用获得的:

php_info_print_table_row(2, "OpenSSL Library Version", SSLeay_version(SSLEAY_VERSION));
header version是一个预处理器常量,它被编译到扩展中:

php_info_print_table_row(2, "OpenSSL Header Version", OPENSSL_VERSION_TEXT);
您可能已经更新了
openssl
端口,获得了新版本的库,并且因为它的ABI没有改变一切,所以一切都适合您。但是由于您没有重新编译扩展本身,
OPENSSL\u VERSION\u TEXT
常量具有来自旧头的值


如果您真的担心这一点,您可以重建
php56 openssl
端口,但由于维护人员在
openssl
更新过程中没有撞到它,我认为这是一件无害的事情。

堆栈溢出是一个解决编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参见帮助中心中的。也许或者会是一个更好的提问的地方。另见。