Fine Uploader to S3 bucket, получая 405 Ошибка метода не разрешена

Я бился головой об стену от этого и совершенно тупой. Я пытаюсь использовать FineUploader для загрузки файлов непосредственно в корзину Amazon S3. По сути, я скопировал код с веб-страницы fineuploader.com (выгрузка файлов напрямую в Amazon S3) и серверный PHP.

Когда я пытаюсь загрузить файл, я вижу, что сообщение в конечную точку подписи, кажется, работает успешно, но когда оно пытается загрузить в S3, я получаю 405 "Метод не разрешен" ошибка.

HTML




    
    







    $(document).ready(function () {
        $("#fine-uploader").fineUploaderS3({
            debug: true,
            request: {
                endpoint: 'upload.roughdrag.com',
                accessKey: 'AKIAJL37USSCV......'
            },

            signature: {
                endpoint: 'handlers/uploadHandler.php'
            },
            uploadSuccess: {
                endpoint: 'index.php'
            },
            iframeSupport: {
                localBlankPagePath: 'blank.html'
            },
            retry: {
                enableAuto: true // defaults to false
            },

            paste: {
                targetElement: $(document),
                promptForName: true
            },

            deleteFile: {
                enabled: true,
                endpoint: 'handlers/uploadHandler.php'
            }
        });
    });



Конечная точка подписи PHP - uploadHandler.php

 $expectedMaxSize) {
        // You can safely uncomment this next line if you are not depending on CORS
        //header("HTTP/1.0 500 Internal Server Error");
        deleteObject();
        echo json_encode(array("error" => "Your file is too big!"));
    } else {
        echo json_encode(array("tempLink" => getTempLink($bucket, $key)));
    }
}

// Provide a time-bombed public link to the file.
function getTempLink($bucket, $key)
{
    $client = getS3Client();
    $url = "{$bucket}/{$key}";
    $request = $client->get($url);

    return $client->createPresignedUrl($request, '+15 minutes');
}

function getObjectSize($bucket, $key)
{
    $objInfo = getS3Client()->headObject(array(
        'Bucket' => $bucket,
        'Key' => $key
    ));
    return $objInfo['ContentLength'];
}

?>

Конфигурация Amazon S3 CORS



    
        *
        POST
        PUT
        DELETE
        3000
        ETag
        *
    

Политика безопасности IAM Group

{
  "Version":"2012-10-17",
  "Statement":[{
     "Effect":"Allow",
     "Action":"s3:PutObject",
     "Resource":"arn:aws:s3:::upload.roughdrag.com/*"
   }]
}

uploader.js был захвачен изhttp://fineuploader.com/source/all.fineuploader-3.9.1.min.js

Ответ консоли

[FineUploader 3.9.0-3] Grabbed 1 dropped files.

[FineUploader 3.9.0-3] Received 1 files or inputs.

[FineUploader 3.9.0-3] Submitting S3 signature request for 0

[FineUploader 3.9.0-3] Sending POST request for 0

POST http://www.roughdrag.com/handlers/uploadHandler.php  200 OK 195ms  

[FineUploader 3.9.0-3] Sending upload request for 0

POST http://upload.roughdrag.com/  405 Method Not Allowed 559ms 

"NetworkError: 405 Method Not Allowed - http://upload.roughdrag.com/"

[FineUploader 3.9.0-3] Received response status 405 with body: 
405 Method Not Allowed

405 Method Not Allowed

Code: MethodNotAllowed
Message: The specified method is not allowed against this resource.
ResourceType: OBJECT
Method: POST
RequestId: 3493FE605B461EAF
HostId: HDXmtSpHufy6LDIH1Nsp0oYkLDvTC3XKFRRIadw66gmaMsF53Z3WYsCWooOoRcw2





[FineUploader 3.9.0-3] Waiting 5 seconds before retrying breakout.jpg...

[FineUploader 3.9.0-3] Detected valid cancel, retry, or delete click event on file 'breakout.jpg', ID: 0.

[FineUploader 3.9.0-3] Cancelling 0

Программное обеспечение выглядит потрясающе, но я просто могуне пройти это. Любая помощь приветствуется. Я

Ответы на вопрос(2)

Ваш ответ на вопрос