我目前正在尝试在我的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.dll
到extension=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();