目前,我在这个问题上绞尽脑汁已经4天了。所以我希望有人能在这里帮助我:)
我正在基于unix的系统上构建一个Apache服务器来托管我的主页。我现在要做的是用Ajax调用在我的服务器上运行一个Python脚本。但不知为什么我想不通。这是我到目前为止的情况。我想调用一个cgi脚本/var/www/cgi-bin/获取传感器.py从/var/www/temp/索引.php文件(使用ajax)下面是我现在拥有的一些源代码:
/var/www/temp/索引.phpfunction checkSensors(){
$.ajax({
url: "../cgi-bin/getSensors.py",
type: "post",
datatype: 'html',
data: {'func':'temp/get_Sensors'},
success: function(response){
console.log(response);
changeResult(response);
}
});
}
/var/www/cgi-bin/获取传感器.py(这个只返回给定的数据)
^{pr2}$
/var/www/.htaccessOptions -Indexes +ExecCGI
AddHandler cgi-script .py
/var/www/cgi-bin/.htaccessOptions ExecCGI
SetHandler cgi-script
网站目录/var/www/
|---->cgi-bin
| |---->getSensors.py
|
|---->temp
| |---->index.php
...
我也在我的apache服务器上运行了a2enmod cgi来启用cgi,但是我得到的答复是cgi是ralready启用的。所有的文件夹和文件都有775个(虽然不如755个,但目前还不错)。是的,我正在运行Linux Rasp 3.2.0-4版本-Debian 3.2.51-1
问题是我总是得到一个404找不到的错误。即使我去localhost/cgi-bin/获取传感器.py. 但是使用ls-l/var/www/cgi-bin命令,我可以看到获取传感器.py文件真的在那里。我认为这是一个关于保护的问题,而不是我的代码不起作用。有人知道吗?(顺便说一句,我是Python新手,所以欢迎使用我的Python脚本的所有提示:)