Отладка jQuery ajax 500 Внутренняя ошибка сервера
Мой рабочий сайт CodeIgniter дает 500 Internal Server Error при размещении на MediaTemple. Это происходит во время вызова jQuery Ajax.
Я понятия не имею, что могло пойти не так. Является ли ошибка от контроллера или модели? Мой вызов Ajax:
$.ajax({
url: "<?php echo site_url('invites/save_email') ?>",
type: 'POST',
data: form_data,
success: function(msg) {
window.location.href = "<?php echo site_url('invites/moreinvites')?>"
return true;
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
alert(xhr.responseText);
}
});
xhr.responseText вернул мне <p>The action you have requested is not allowed.</p>
. Но что это значит?
Ответы
Ответ 1
Вы можете попробовать использовать alert(xhr.responseText);
или console.log(xhr.responseText);
(позже будет отображаться в вашей консоли браузера, например firebug) в обратном вызове ошибки, при этом вы можете получить сообщение, связанное с исключением (если есть).
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(xhr.responseText);
alert(thrownError);
}
или
error: function (xhr, ajaxOptions, thrownError) {
console.log(xhr.status);
console.log(xhr.responseText);
console.log(thrownError);
}
Ответ 2
Пожалуйста, см. мой ответ здесь. Это полное объяснение того, как выполнить отладку ajax с помощью CodeIgniter и jQuery.
Ответ 3
Вам нужно настроить файл webconfig для получения запроса POST.
<system.web>
<webServices>
<protocols>
<add name="HttpPost" />
</protocols>
</webServices>
</system.web>