Есть ли хитрость в использовании $ _POST на amazonS3? - PullRequest
0 голосов
/ 19 декабря 2011

У меня есть простая форма электронной почты php, где форма проверяется и отправляется с помощью ajax-вызова на email.php. Он отлично работает на моем собственном сервере, но в Amazon S3 я получаю сообщение об ошибке: MethodNotAllowedThe specified method is not allowed against this resource.OBJECTPOST2871412DE..., а затем непрерывную строку цифр и букв.

мой php файл выглядит следующим образом

<?php

$to = "person@domain.com";
$subject = "Message from ".$_POST['my_name'];

$person = $_POST['my_name'];
$email = $_POST['my_email'];
$comments = $_POST['my_comments'];



$headers = "From: ".$email."\r\n" .
         "Reply-To: ".$email. "\r\n";

$message = "Entry from: ".$person." (".$email.")\n\n Comments: ".$comments;

$result = mail($to, $subject, $message, $headers);


?>

Вот вызов ajax (w с цензурой на абсолютный php):

$(document).ready(function(){

    $("#emailSubmitBtn").click(function(){

        if ( $("#contactForm").valid() ) {

            var myName = $('#my_name').val();
            var myEmail = $('#my_email').val();
            var myComments = $('#my_comments').val(); 

            var dataString = 'my_name='+ myName + '&my_email=' + myEmail + '&my_comments=' + myComments;

            $.ajax({
                type: "POST",
                url: "http://####.s3.amazonaws.com/email.php",
                data: dataString,
                success: function() {
                    $('#contact').html("<div id='message'></div>");
                    $('#message').html("<p>Thank you for submitting the form!</p>")
                    .hide()
                    .fadeIn(1500);
                }
            });
            return false;
        }


    });

});

1 Ответ

4 голосов
/ 19 декабря 2011

Amazon S3 не может выполнять файлы PHP, поэтому то, что вы пытаетесь сделать, просто не будет работать.

Вы можете отправить файл в корзину S3 (а не в конкретный URL-адрес файла, следовательно, допускается ошибка метода), но вы не можете запустить код там. Это Простой Хранение Сервис.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...