Jquery,php,生产站点上的http 500错误


Jquery, php, http 500 error on production site

我有一个jquery问题,我认为这是一个jquery问题,但我正在使用ajax调用调用php页面。显然这很容易,但是当我使用它时,我不断收到 500 错误。我已经尝试了我能想到的一切。 但我一事无成。 我敢肯定,这是因为我不是jquery大师,所以如果你是,我可以用你的大脑。

请记住,这在本地有效,但在生产环境中无效:

$('#submit').on('click', function(e){
  e.preventDefault();
  if($('#signupForm').valid())
  {
    var data = $('#signupForm').serializeObject();
    $.ajax({
      type: "POST",
      url: 'http://pathtooweb.com/funcs/signup.php',
      data: data,
      success: function(data) {
        toastr.success(data, "Thank you!");
        $("#signupForm").trigger( "reset" );
      },
      error: function(xhr, ajaxOptions, thrownError) {
        console.log(xhr.responseText);
      }
    });
  }
});

这是我在控制台上遇到的实际问题:

POST http://pathtooweb.com/funcs/signup.php 500 (Internal Server Error) jquery.js:7845
x.support.cors.e.crossDomain.send jquery.js:7845
x.extend.ajax jquery.js:7301
(anonymous function) pathtooweb.com/:84
x.event.dispatch jquery.js:4676
y.handle

更新:

这不是一个跨域的问题,在某种程度上是一个服务器错误......当我把我的代码推送到github然后向下推送到我的服务器时,我使用的一个库没有上传到github,所以反过来没有被拉到服务器。真的不能说为什么没有.gitignore 文件。所以无论如何,感谢您的"建议"。:)

伙计

,我想您正在尝试跨域 POST..!!这是不允许通过 ajax 的。并且是按照网络标准严格的禁忌。!!

可能在本地,您在 ajax 请求中使用了不同的 URL.. 该 URL 也在本地托管。是这样吗??

如果您想要跨域 POST..... 通过将表单操作 URL 作为跨域 URL 直接将表单发布到该 URL。

第二种选择是使用 jsonP 作为 ajax 请求中的数据类型......这是一个黑客,但有效。