使用 PHP S3 类时出现 RequestTimeTooSkewed 错误

2024-01-11

这是我的第一个PHP项目,所以我真的一点也不了解PHP。

我想做的是使用 PHP S3 类将文件上传到 S3 存储桶。一个示例代码片段昨天可以工作,但是当我今天再次开始使用它时,几乎完全相同的代码停止工作。

现在我只收到 putObject 函数返回的以下错误:

Warning: S3::putObject(): RequestTimeTooSkewed The difference between the request time and the current time is too large. in /vagrant/LifeInYourWay/S3.php on line 222

我读到一些地方可能是服务器时间导致错误,所以我将服务器时间更改为 America/New_York,但仍然得到相同的结果。

我的 PHP 代码是:

if(!class_exists('S3')) require_once('S3.php');

// AWS access
if(!defined('awsAccessKey')) define('awsAccessKey', '******');
if(!defined('awsSecretKey')) define('awsSecretKey', '******');

$s3 = new S3(awsAccessKey, awsSecretKey);

$imageName = $_FILES['imageFile']['name'];
$imageTempName = $_FILES['imageFile']['tmp_name'];
$imageLink = $_POST['imageLink'];

if(!strlen($imageLink) || $imageLink == 'http://'){
    //create a new bucket
    $s3->putBucket("widget-images", S3::ACL_PUBLIC_READ);

    //move the file
    $put = $s3->putObject($s3->inputFile($imageTempName), "widget-images", $imageName, S3::ACL_PUBLIC_READ);
    if($put){
        var_dump($put);
        $imageUploaded = true;
    }else{
        $imageUploaded = false;
    }
    echo($imageUploaded);
}else $image = $imageLink;

您计算机的时钟或时区设置不正确。由于 S3 使用当前时间来验证请求,因此如果您的时钟偏差超过 15 分钟,或者您的时区不正确(从而导致小时数偏差),您的请求将会失败。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 PHP S3 类时出现 RequestTimeTooSkewed 错误 的相关文章

  • 如何改进 PHP 分页算法?

    我正在研究 PHP 中的分页算法 我可以猜测它需要改进的空间 所以我想对如何改进它有一些想法 无论是从 UI UX 的角度清理代码本身 还是你能想到的任何其他东西 该算法应输出如下所示的分页 1 2 3 6 7 8 97 98 99 or
  • PHP 自定义会话处理程序问题 (PHP 7.1)

    我刚刚在计算机上从 PHP 7 0 迁移到 PHP 7 1 当前版本的 WAMP 的全新 全新安装 它似乎破坏了自定义会话处理程序中的某些内容 该处理程序应该将会话保存到数据库而不是使用文件系统 自定义处理程序类是 class db ses
  • 提交简单 PHP 表单时出现禁止错误

    我有一个不复杂的问题 这似乎比应有的更复杂 我有一个简单的表单 用于向网站添加内容 有些字段需要输入html 然而 当您在表单的不同部分输入某些 html 元素时 它会认为它讨厌您并抛出禁止的 403 错误 这是下面的表格
  • PHP FTP_PUT 上传到目录

    我正在自学PHP 一本名为 PHP完全参考 PHP5 2 的书 我目前正在使用第 11 章 FTP 上传 删除 makedir 等 但遇到了一些本书未涵盖的问题 根据我的教科书 这是上传到服务器的简单代码 connect ftp conne
  • Zend 框架会话丢失

    我有一个注册表单 当用户注册时 它会将他重定向到他的页面 在 Firefox 和 Chrome 中一切正常 但在 Internet Explorer 中则正常 看起来保存用户信息后 会话就关闭了 并且不会将用户重定向到他的页面 我该如何解决
  • 如何在PHP中完成http响应并进行进一步处理?

    就我而言 我需要向客户端回显一个标志并发送一封电子邮件 现在客户端需要等待电子邮件发送 但我想把这两个步骤分开 该怎么做呢 你可以看一下异步运行 PHP 任务 https stackoverflow com questions 858883
  • 在 PHP 中使用可变变量是不好的做法吗?

    例如 一个简单的MVC类型系统 api class method使用重写为 PHP 变量 htaccess nginx conf 然后做类似的事情
  • PHP 多个 Ajax 请求:第一个请求阻止第二个请求

    我在一页上有 2 个 ajax 请求 我运行了第一个请求并单独启动了第二个请求 但第二个在第一个运行后停止工作 第一次结束后继续 第一个请求需要很长时间 大约 30 60 秒 此时我需要第二个请求来显示日志第一个请求发生的情况 我尝试使用
  • 很简单的PHP加法问题

    我想我已经关注这个问题太久了 为什么这段代码打印 no 它应该打印 yes 不是吗 我在 PHP 5 3 和 PHP 5 2 上尝试过 都打印 no See 比较浮点数 http www cygnus software com papers
  • Google Closure 编译器和 multipart/form-data 不起作用

    我正在向 google 闭包编译器 API 服务发出请求 content file get contents file js url http closure compiler appspot com compile post true p
  • Twitch API - 无法使用 PHP 获取身份验证令牌

    stackoverflow 的成员们大家好 我不是一个喜欢寻求帮助的人 但在这种情况下 我认为这是解决我的问题的唯一方法 谷歌并没有给我太大帮助 所以 我的问题 我想使用 Twitch API 获取一些数据 听起来很容易 我希望是这样 下面
  • zend框架验证模型中的数据而不是表单中的数据

    使用 Zend Framework 2 在我的应用程序中 要编辑数据库中的数据 可以编译 html 表单或发送 http post 请求 我的服务器作为 Web 服务实现 在第二种情况下 不会呈现表单 问题 如果当服务器收到不是从表单发送而
  • 如何验证上传的文件是视频?

    我的服务器上有一些非常敏感的信息 因此安全性是一个大问题 用户需要能够上传视频 我知道允许用户上传文件会带来安全威胁 因为没有 100 的方法可以阻止他们上传非视频 但我显然可以选择服务器将保留哪些文件 我知道检查文件扩展名是不够的 检查
  • php - 重定向ajax请求[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何在 php wordpress 中重定向 ajax 请求 I tried header Location http redirect
  • PHP 何时实现了函数使用闭包? [复制]

    这个问题在这里已经有答案了 我在 PHP 手册中找不到解释的部分use 我有代码 num 0 array walk recursive REQUEST function mValue use num num 我的 Eclipse 抱怨 Pa
  • 如何检测iPhone是否有视网膜显示屏?

    如何检测 iPhone 是否配备视网膜显示屏 有靠谱的办法吗 要么是纯 PHP 要么最好是 Zend Framework 方式来执行此操作 我通过这个弄清楚了 var retina window devicePixelRatio gt 1
  • 内存高效的大型数据集流式传输到 S3

    我正在尝试使用 SQL alchemy 复制 S3 大型数据集 大于 RAM 我的限制是 我需要使用 sqlalchemy 我需要将内存压力保持在最低水平 我不想使用本地 filsystem 作为中间步骤将数据发送到 s3 我只想通过管道将
  • s3-select 查询字段名数据

    我正在尝试从 s3 select 中的 json 数据查询数据 person Id 1 Name Anshu Address Templestowe Car Jeep Id 2 Name Ben Mostafa Address Las Ve
  • Yii2 无效调用:设置只读属性

    我有一个Post具有多对多关系的模型Tags 在 Post 模型中定义 public function getTags return this gt hasMany Tags className id gt tag id gt viaTab
  • 在 Elasticsearch php API 中使用多种类型或索引

    我想使用查询多种类型和索引Elasticsearch PHP API 但我不知道怎么办 我应该将类型和索引的数组传递给 params params index index array of indices params type types

随机推荐

  • Linux下静态代码分析工具比较? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有人对 Linux 可用的静态代码分析工具进行过比较吗 以下工具的优点和缺点是什么 林田 Sparse Splint RATS 使用 Wa
  • VectorDrawable 未居中对齐

    我使用我拥有的路径数据创建了一个 VectorDrawable 文件 但问题是图像没有在整个区域的中心对齐 而是创建为左上角对齐 看一看 文件
  • ReactJS-在重定向之前删除 HTTP 标头

    在我的 React 应用程序中 我正在制作一个GET对端点的 REST Web 服务调用 其目的是为受保护的 S3 资产生成预签名的 AWS URL 我们通过一个Authorization标头和服务的令牌 此初始调用按预期工作 服务通过重定
  • 如何动态更改docker基础镜像

    我有两个 dockerfile 它们完全相同 唯一的区别是 FROM 语句 我遇到的问题是 每当我修改一个文件中的某些内容时 我都必须在另一个文件中执行相同的操作 因为它们必须相同 一种解决方案是将基础映像作为参数传递给 docker bu
  • 将上下文传递给非活动类的最佳实践?

    因此 我的第一个主要应用程序几乎已编码 我正在对我的代码进行优化 该应用程序工作正常 但我不确定将上下文传递给其他类的方式 我不想以错误的方式去做 我在 Stackoverflow 中偶然发现了有关上下文的文章和问题 以及将其传递给非活动类
  • Jquery文件上传提交到ashx时出错

    我正在尝试使用Jquery文件上传 http aquantum demo appspot com file upload用于将文件异步上传到 C3 http 处理程序的插件 我已经完成了设置步骤GitHub 站点 https github
  • 确定一个数字数组是否可以分为两个数组,每个数组保存相同的数字和

    下面的代码用于确定一个数字数组是否可以分为两个数组 每个数组保存相同的数字之和 例如 1 3 2 6 可以分为 6 和 1 2 3 因此返回 true 而 1 5 7 不能分为两个平衡数组 因此返回 false public boolean
  • 动态客户关系管理。子网格中完全自定义的 FetchXml

    我正在为帐户创建一个子网格 以按多个字段显示所有相关联系人 这是我试图设置的 fetch xml
  • 连接被拒绝的解决方法是什么:连接

    我正在尝试从另一个网站获取信息 当我尝试做的时候 URL url new URL theSite url getContent 它抛出一个Connection refused connect exception 这是否意味着该网站将不允许自
  • FormEditor 的“与编辑器链接”

    我正在寻找 与编辑器链接 的解决方案 但对于 FormEditor 而不是 ViewPart 如中所述http murygin wordpress com 2012 06 13 link eclipse view to editor htt
  • Boost::asio async_wait 处理程序签名

    我正在查看 boost asio 示例 我正在看实施例4 http www boost org doc libs 1 38 0 doc html boost asio tutorial tuttimer4 html 令人困惑的是 此示例中的
  • 如何防止结果集在连接关闭时失效?

    我想从执行查询并关闭连接的函数中传递结果集 但是 一旦其父 Connection 关闭 ResultSet 就会失效并抛出异常 java sql SQLException Operation not allowed after Result
  • 如何使用 TSQL 将属性添加到现有根 XML 节点?

    我已经用 SQL 构建了一些 XML declare requestXML xml set requestXML select dataXML for xml raw rtEvent 我现在的一般输出遵循与此类似的模式
  • 休息; VS 继续;与返回;

    我从以下网站下载了一份用 php 编写的免费新闻通讯Hotscripts com http hotscripts com 我更新了一些代码以添加新功能 但我看到了一些我不明白的东西 在代码中我看到 foreach if break else
  • Ionic 2 不生成 scss 源映射。 “main.css.map”包含“null”

    你能帮我理解为什么 Ionic 2 不生成 scss 源映射吗 在 ionicserve 之后 我导航到 www build 文件夹 有 main css map 但它包含 null 而不是生成的源映射 如何修复它 有人遇到过这个问题吗 您
  • 如何在react-router v6中使用element传递props?

    我正在尝试将 MainSection 组件重用于两个不同的目的 单个故事和所有故事 为了实现此目的 我想在转到该组件的渲染的路由中传递一个属性 home Home 是 true 或 false 我想根据该布尔值渲染 MainSection
  • 用户:使用selenium传递代理

    在程序中使用用户验证代理的最佳 最简单方法是什么 我目前有这个 但我需要在浏览器打开时填写用户名和密码 from selenium import webdriver PROXY 123 123 123 243 80 chrome optio
  • Android Webview 和 Facebook 登录不工作

    我遇到了问题WebView我正在开发的应用程序 我们有一个通过 android 显示的响应式网站WebView 该网站有一个使用 Facebook 登录选项 这在移动浏览器和网站本身上运行良好 每当我尝试使用WebView应用程序登录使用F
  • 为什么循环中的任务工厂打印超出循环索引?

    我正在学习在 C 中使用任务并行库 TPL 并编写了以下代码 您可以复制粘贴并运行它 using System using System Collections Generic using System Linq using System
  • 使用 PHP S3 类时出现 RequestTimeTooSkewed 错误

    这是我的第一个PHP项目 所以我真的一点也不了解PHP 我想做的是使用 PHP S3 类将文件上传到 S3 存储桶 一个示例代码片段昨天可以工作 但是当我今天再次开始使用它时 几乎完全相同的代码停止工作 现在我只收到 putObject 函