我正在尝试踏入 Web 开发世界,但我在理解为什么我的基本 hello world 脚本失败时遇到了一些麻烦。我对 python cgi 脚本进行了简单的 AJAX 调用,该脚本返回了一小部分 HTML,但是调用失败并且我收到“内部服务器错误”作为错误消息。这是我的代码:
Python脚本:
#!/usr/local/bin/python
print "Content-Type: text/html\n"
print """\
<html>
<body>
<h2>Hello World!</h2>
</body>
</html>
"""
AJAX 调用:
$(function(){
$('#clickme').click(function(){
$.ajax({
url: "cgi-bin/ajaxpost.cgi",
dataType: "html",
type: "POST",
success: function(response){
alert(response);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
});
});
});
这是我的服务器错误日志所说的:
CGI ERROR: A system problem prevented your request from being completed., referer: [my test page]
Premature end of script headers: ajaxpost.cgi, referer: [my test page]
我仔细检查了我的服务器,“#!/usr/local/bin/python”是 python 的正确路径。此外,他们说他们没有指定的 cgi-bin 文件夹,任何 cgi 都可以从任何文件夹运行,只要它具有 .cgi 扩展名。编辑:另外,我允许在服务器上执行 .cgi。
我会继续承认我可能需要一个“像我五岁一样解释它”的答案。谢谢!