php - PHP:在生产服务器上找不到 AWS 开发工具包类
问题描述
我安装了 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”
我不确定我在这里做错了什么。
解决方案
基于AWS SDK PHP Class Not Found。我删除了通过 composer 下载的 SDK 并从 .zip https://github.com/aws/aws-sdk-php/releases再次安装它,效果很好。我不确定为什么作曲家文件与 zip 文件不同。
推荐阅读
- linux - git push 使用 crontab 每小时提示密码
- python - 设置环境变量python
- ubuntu - ubuntu trusty 14.04 达到 EOL 后安装 php5.6 的选项有哪些
- excel - 使用 yo office 运行 Excel 任务窗格项目后获取“office-addin-debugging 不被识别为内部或外部命令”
- typescript - Leaflet 中的 MarkerCluster 未定义?
- javascript - 有没有更好的方法将消息发送到特定服务器中的特定通道?
- redis - 使用带有 Redis 的 spring-session 时出现 @ConfigurationProperties 问题
- android - 如何使用 Android CameraX API 缩放相机?
- r - 如何在两个特定值之间重新编码一系列行
- c# - 无法从 azure vm 机器打开 selenium chrome 驱动程序到我的客户端机器?这甚至可能吗?