0

I have configure wamp for cgi scripts correctly but it is not running following code and giving following server error on executing.

 Bad file descriptor: don't know how to spawn child process: 
   C:/wamp/www/New folder/hello.cgi, referer: http://localhost/New%20folder/

My active perl is installed on C:/wamp/www/perl
here is code:

 #!C:\wamp\bin\perl.exe -w
 print "Hello World.\n";
4

1 回答 1

1

Windows 不注意#!线条。您需要确保您的文件扩展名(.cgi在您的情况下,或.pl更常见)与注册表中的 perl 可执行文件相关联。


更多信息:

运行一个perl程序/脚本有两种方式,一种是直接以主程序/脚本的文件名作为参数执行perl:

C:\wamp\bin\perl.exe mydir\myprog.pl

永远不要在 Web 服务器的 cgi 目录中执行此操作。

执行程序的另一种方法是只命名要运行的文件,并依赖操作系统的内置方法来找到正确的程序来运行它。

mydir\myprog.pl

在 *nix 操作系统上,分析文件的前两个字节以确定如何处理它,如果这两个字节等同于 ASCII 字符串#!,则文件被视为文本,第一行的其余部分是阅读并期望它将包含文件解释器的路径。

在 Windows 操作系统上,文件扩展名用于在注册表中搜索与该文件类型关联的解释器的路径。

于 2013-08-22T02:35:57.770 回答