0
我尝试了文件上传到我的Amazon S3闯民宅本教程 http://www.anyexample.com/programming/php/uploading_files_to_amazon_s3_with_rest_api.xmlPHP亚马逊文件上传签名
但我得到了以下错误
HTTP/1.1 403 Forbidden
x-amz-request-id: 10F111F91A85CFC5
x-amz-id-2: 6pBJs+OKZOZdTF3zQw0MLM62zGAAsCFyeJsv/xzYB+wM7+7RnZU+k1rtcpTWC8VS
Content-Type: application/xml
Transfer-Encoding: chunked
Date: Fri, 02 Dec 2011 09:35:21 GMT
Server: AmazonS3
2bf
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>SignatureDoesNotMatch</Code>
<Message>The request signature we calculated does not match the signature you provided. Check your key and signing method.</Message>
<StringToSignBytes>50 55 54 0a 0a 0a 46 72 69 2c 20 30 32 20 44 65 63 20 32 30 31 31 20 30 39 3a 33 37 3a 35 30 20 2b 30 30 30 30 0a 2f 74 61 6e 65 77</StringToSignBytes>
<RequestId>10F111F91A85CFC5</RequestId>
<HostId>6pBJs+OKZOZdTF3zQw0MLM62zGAAsCFyeJsv/xzYB+wM7+7RnZU+k1rtcpTWC8VS</HostId>
<SignatureProvided>6V2sLdHEJ9uWZO0G81q5QQzSa9Y=</SignatureProvided><StringToSign>PUT
任何想法 预先感谢
是'我们出的要求签名不匹配您提供的签名。检查你的密钥和签名方法.'不清楚了吗? –
他们以下是签名方法...你能帮忙吗? $ dt = gmdate('r'); //基于GMT的时间戳 //准备要签名的字符串(请参阅AWS S3开发人员指南) $ string2sign =“PUT {$ dt}/{$ aws_bucket}”; //准备HTTP PUT查询 $查询=“PUT/{$ aws_bucket} HTTP/1.1 主持人:s3.amazonaws.com 连接:保持活跃 日期:$ DT 授权:AWS {$ aws_key}: ” .amazon_hmac(string2sign $) “\ n \ n”; $ RESP = sendREST($ FP,$查询); 如果(strpos($ RESP, '')==假的!){ 模具($ RESP); } –
ramesh
你有你自己的AWS访问密钥ID和秘密访问键? –