У меня есть простая форма электронной почты 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;
}
});
});