PHP OpenSSL 扩展有一个包?

Tas*_*sta 30 php apt openssl

我知道 OpenSSL 扩展在 PHP 源代码中,但是当我执行apt-get install php5. 甚至没有一个apt-get install php5-openssl。我必须如何进行?

Eri*_*lho 37

我认为 SSL 支持不依赖于扩展,它已经内置到 Ubuntu 的 PHP 中。尝试使用以下内容在您的 Web 服务器中创建一个 PHP 文件:

<?php phpinfo() ?>
Run Code Online (Sandbox Code Playgroud)

然后在浏览器中访问它 ( http://<server>/<file>.php)。你应该看到:

在此处输入图片说明

在此处输入图片说明

我只安装了这些 PHP 包:libapache2-mod-php5、php5-cli、php5-common、php5-gd、php5-mcrypt、php5-mysql。

  • 或者在终端调用函数`php -i | grep -i openssl` (21认同)
  • 快速列出 PHP 二进制文件中当前启用的所有模块:`php -i | grep 已启用` (2认同)

sim*_*eco 19

尝试

php -i | grep -i openssl
Run Code Online (Sandbox Code Playgroud)

如果您安装了 OpenSSL 扩展,您应该会看到如下内容:

openssl
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.0.1f 6 Jan 2014
OpenSSL Header Version => OpenSSL 1.0.1f 6 Jan 2014
openssl.cafile => no value => no value
openssl.capath => no value => no value
OpenSSL support => enabled
Run Code Online (Sandbox Code Playgroud)

似乎默认安装了 OpenSSL 扩展。

更新

如果你没有这个扩展名,你可以编辑php.ini文件。

php.ini

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;

; If you wish to have an extension loaded automatically, use the following
; syntax:
;
;   extension=modulename.extension
;
; For example, on Windows:
;
;   extension=msql.dll
;
; ... or under UNIX:
;
;   extension=msql.so
;
; ... or with a path:
;
;   extension=/path/to/extension/msql.so
;
; If you only provide the name of the extension, PHP will look for it in its
; default extension directory.
;
Run Code Online (Sandbox Code Playgroud)