在EC2实例上启用OpenSSL

时间:2013-09-12 01:42:31

标签: php amazon-ec2 openssl

我目前正在尝试在我的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。有人可以给我任何指导吗?

2 个答案:

答案 0 :(得分:2)

我相信您会在服务器上使用yum install openssl

如果您没有看到,请尝试yum search opennsll

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

答案 1 :(得分:2)

尝试安装:

 yum install php-openssl

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

yum install mod_ssl 

然后检查php.ini是否具有扩展avaible,如果你不知道你正在使用哪个php.ini,你可以将以下内容放在php文件中:

 echo php_ini_loaded_file();

因为你正在使用linux,所以在文件中找到下面的行,如果没有,请将其添加到最后:

extension=openssl.so

之后用

重启apache服务器
 service httpd restart

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

phpinfo();