在 EC2 实例上启用 OpenSSL


Enabling OpenSSL on EC2 instance

我目前正在尝试在我的ec2服务器上安装openssl,以便我可以摆脱这个特定的错误:

 stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages: error:14094410:SSL routines:func(148):reason(1040)

经过一些研究,我发现我需要在我的 php.ini 文件中启用某些内容,但是,我无法启用与 OpenSSL 相关的任何内容,我需要进行如下调整:

;extension=php_openssl.dllextension=php_openssl.dll

那时我意识到我需要为我的 php.ini 文件安装一个扩展名才能让我启用它,但是我不知道如何在我的 ec2 实例服务器上安装 OpenSSL。有人可以给我任何指导吗?

我相信

你会在服务器上使用yum install openssl

如果您

没有看到它,请尝试yum search opennsll

他们在这里有另一种方式安装 openssl 的说明:http://docs.aws.amazon.com/IAM/latest/UserGuide/InstallCert.html

尝试安装:

 yum install php-openssl

如果你还需要安装 apache 模块,如果上面的命令没有安装,它可以

yum install mod_ssl 

然后检查 php.ini 是否有可用的扩展名,如果你不知道你正在使用哪个 php.ini你可以把以下内容放在一个 php 文件上:

 echo php_ini_loaded_file();

由于您使用的是 linux,因此请在文件上找到下面的行,如果不存在,请将其添加到末尾:

extension=openssl.so

之后,重新启动 apache 服务器

 service httpd restart

您应该已安装 ssl,并且可以在 php 文件上使用以下内容进行检查:

phpinfo();