今天在jQuery论坛上看到有人问了一个使用Ajax后台调用Perl脚本的问题。我把他代码Copy下来,在本地测试一下,发现代码都是OK!只所以他的有问题,应该是他的Web服务器不支持Perl。
这里以我的机器配置为例,解说一下!
1、首先要搭建一个Perl平台,我的机器上是用ActivePerl!
[img][attach]410[/attach][/img]
2、其次是配置IIS(我的是IIS 7)
这里我们先测试一下没有配置IIS的情况:
Perl.pl文件内容是:
#!/usr/local/bin/perl
use strict;
print "Content-Type: text/html\n\n";
print "Hello!\n";
AjaxPerl.html文件内容是:
利用Ajax来请求Perl程序执行结果
先在命令下测试OK,表明ActivePerl安装正常!
然后我们在浏览器里测试是否能调用Perl脚本,输入地址:http://localhost:8084/javascript/demo/AjaxPerl.html
利用FF的FireBug插件,就可以观察到:
[img][attach]412[/attach][/img]
为什么出现这个错误呢?文件明明是存在的!!很正常,因为IIS不能识别到Perl脚本。我们可以直接在浏览器里测试:http://localhost:8084/javascript/demo/perl.pl脚本,运行后得到的就是这个错误:HTTP 错误 404.3 – Not Found
由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
[img][attach]411[/attach][/img]
现在我们配置一下IIS,
[img][attach]413[/attach][/img]
[img][attach]414[/attach][/img]
再测试http://localhost:8084/javascript/demo/perl.pl时,就能正常运行了。继续测试Ajax后台调用也就一切OK了!
[img][attach]415[/attach][/img]