为了上线,我在服务器上移动了我的网站,但Ajax调用一个旨在返回文本值的PHP文件时遇到了问题。我正在努力寻找错误是什么。代码在我的本地电脑上工作。
我从Ajax调用中得到的错误是:
Error: error Internal Server Error
我正在使用以下代码执行调用:
function goClick(ttype, vvalue) {
$.get(fw_script, { type: ttype, value: vvalue, langpref: langpref })
.success(function(result) {
setResult(result);
})
.error(function(jqXHR, textStatus, errorThrown) {
setResult("Error: " + textStatus + " " + errorThrown);
alert("Failure");
});
}
如何获取有关导致此问题的原因的更多信息?我不是PHP方面的专家。PHP中是否存在与Java的try {} catch {} finally{}
等效的内容?这是在服务器端捕获异常错误的正确方法吗?我应该用catch来包装我的PHP代码吗?如何检索有关内部错误的信息?
你说得很对。try {} catch {}
在PHP中的工作方式相同。http://php.net/manual/en/language.exceptions.php
内部服务器错误通常是由PHP文件中的拼写错误或类似错误引起的。您可以尝试启用错误日志以获取有关错误的更多详细信息。
将以下代码放在php脚本之上//记录php错误
<?php
@ini_set('log_errors','On'); // enable or disable php error logging (use 'On' or 'Off')
@ini_set('display_errors','Off'); // enable or disable public display of errors (use 'On' or 'Off')
@ini_set('error_log','/home/path/logs/php-errors.log'); // path to server-writable log file
?>