【发布时间】:2010-09-27 15:40:51
【问题描述】:
我在 Windows 上运行 Apache Web 服务器,以便处理一些 Perl CGI 脚本。在生产中,这些脚本在 linux 机器上运行,并且在源代码存储库中它们都有 shebangs,例如:#!/usr/bin/perl,但在我的 Windows 机器上,shebangs 将是#!c:\perl\bin\perl.exe,所以我与源代码库有冲突。
输入 Apache ScriptInterpreterSource 指令。
我一直在努力使它工作,基于我可以谷歌。但到目前为止还没有运气。我有:
将这些内容添加到相应的指令中 AllowOverride None
选项索引 FollowSymLinks ExecCGI 命令允许,拒绝 允许所有人 ScriptInterpreterSource Registry-Strict补充说: AddHandler cgi-script .cgi
编辑了我的注册表并向
添加了一个新字符串
HKEY_CLASSES_ROOT\.cgi\Shell\ExecCGI\Command=C:\Perl\bin\perl.exe
现在,我知道 CGI 可以在此服务器上运行,只要它们具有正确的 shebang。
但是当我尝试在没有 shebang 的情况下访问 CGI 时,apache 日志会吐出:
没有为以下文件找到执行 CGI 动词 输入“.cgi”
任何想法、见解,甚至是疯狂的猜测都将不胜感激。
谢谢。
【问题讨论】: