Ajax调用错误500

时间:2017-08-19 17:08:48

标签: php jquery ajax

所以我正在开发一个用户可以撰写文章的网站。我遇到了一个问题。当用户编写短文时,它可以正常工作,但是当用户编写或编辑较长的文章时,它会在控制台中出现Ajax 500错误。我不确定问题是否正在发生,因为我正在使用CKEditor。无论如何,这是我用来发送Ajax文章的代码:

var name        = $(".article_name").val().trim(),
    image       = $("#article_input").val(),
    category_id = $(".txtArticleCategory").val().trim(),
    short_body  = $(".txtShortBodyArticle").val().trim(),
    tags        = $(".txtTagsArticle").val().trim(),
    body        = CKEDITOR.instances['txtArticleBody'].getData();

    if(name !== "" && image !== "" && category_id > 0 && body !== "" && short_body !== "" && tags !== ""){    
      var formData = new FormData($('#insertArticleForm')[0]);
      formData.append("body", body);

      $.ajax({
          xhr: function() {
            var xhr = new window.XMLHttpRequest();

            xhr.upload.addEventListener("progress", function(evt) {
              if (evt.lengthComputable) {
                var percentComplete = evt.loaded / evt.total;
                percentComplete = parseInt(percentComplete * 100);

                //update progress bar width
                $('.progress-bar-custom > span').css('width', percentComplete + "%");    
              }
            }, false);

            return xhr;
          },
          type: "POST",
          url: '/actions/update_article.php',
          data: formData,
          processData: false,
          contentType: false,
          success: function (data) {
              $('.progress-bar-custom').css('display', 'none');
              $('.progress-bar-custom > span').css('width', '0%');

              if(data == 'true'){
                // Empty textboxes
                $(".article_name, .txtArticleCategory").val("");
                CKEDITOR.instances['txtArticleBody'].setData("");

                alert('Article added.');
              }else if (data == "size") {
                alert('Image too big. Max size is 2mb');
              }else if (data == "false") {
                alert('Error, please try again.');
              }
          },
          error: function(){
            alert('Error, please try again.');
          }
      });
    }else{
      alert("Complete a text fields.");
    }
  });

这是我得到的错误:

jquery.min.js:4 POST http://sub.domain.net/actions/update_article.php 500 (Internal Server Error)

错误只发生在我尝试添加或编辑大型文章时,有人知道为什么会发生这种情况或我如何解决它?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我联系了我的网络托管服务提供商,他们告诉我它最终成为了一个ModSec规则。如果您遇到类似问题,我建议您与他们联系。