【发布时间】:2019-01-10 00:01:24
【问题描述】:
我安装了 AWS SDK 以及 Facebook 和 Google SDK。他们都在我本地的 MacOs 环境中正常工作。但是一旦我推送到我们的服务器,所有 AWS 客户端都无法正常工作。 FB 和谷歌仍在生产中。
include_once(__DIR__ . "/../../../vendor/autoload.php");
use Aws\Rekognition\RekognitionClient;
use Aws\Sdk;
class RekognitionTest extends CI_Controller
{
private $client;
function __construct()
{
$sharedConfig = [
'version' => 'latest',
'region' => 'us-east-1',
'credentials' => [
'key' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
'secret' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
]
];
$sdk = new Sdk($sharedConfig);
$this->client = $sdk->createRekognition();
}
}
在上面的代码中我得到了错误:
PHP 致命错误:找不到类“Aws\Sdk”
还尝试了不同的方法来启动客户端:
$this->client = new RekognitionClient([
'version' => 'latest',
'region' => 'us-east-1',
'credentials' => [
'key' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
'secret' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
]
]);
我得到第二种方式:
PHP 致命错误:找不到类“Aws\Rekognition\RekognitionClient”
SDK 版本:“aws/aws-sdk-php”:“^3.82”
我不确定我在这里做错了什么。
【问题讨论】:
-
你运行
composer install命令了吗? -
我在安装 sdk 时在本地运行它,但没有在服务器上运行。我只是通过 git 推送代码
-
您很可能忽略了
vendor文件夹提交到您的 git 存储库。尝试在您的 AWS 服务器上运行composer install。 -
不,供应商不会被忽略。因为 FB 和 Google sdks 是通过我本地的 composer 安装的,它们可以正常工作
标签: php linux amazon-web-services sdk