我使用ajax将数据发送到服务器,它在localhost上工作正常,但我在在线服务器上测试代码,它返回错误500.
如何解决这个问题?
$('#btn_publier').click(function (e) {
var formdata = new FormData(document.getElementById('post'));
var file_data = $('#IMG_CDV').prop('files')[0];
formdata.append('file', file_data);
$.ajax({
url: '../wp-content/plugins/Carnet_voyages/publier.php',
type: 'post',
data: formdata,
dataType: 'text', // what to expect back from the PHP script, if anything
cache: false,
contentType: false,
processData: false,
success: function (result, statut) { // success est toujours en place, bien sûr !
if (result != "") {
alert(result);
location.reload();
}
},
error: function (resultat, statut, erreur) {
alert(erreur);
}
});
e.preventDefault();
});
答案 0 :(得分:0)
错误500通常发生在内部服务器错误
尝试 1.重新加载页面, 2.清除浏览器的缓存, 3.删除浏览器的cookie, 4.作为504网关超时错误进行故障排除, 或者直接考虑正确配置在线服务器或站点管理员
了解其可能的原因也有帮助:
1)权限错误。在大多数情况下,500内部服务器错误是由于对一个或多个文件或文件夹的权限不正确造成的。在大多数情况下,对PHP和CGI脚本的错误权限是罪魁祸首。这些通常应设置为0775(-rwxr-xr-x)。
2) A PHP Timeout. If your script connects to external resources and those resources timeout, an HTTP 500 error can occur. Timeout rules, or better error handling in your script, should help if this is the cause of the 500 error.
3) A Coding Error in .htaccess. While not as common, be sure to check that your site's .htaccess file is properly structured.