在 Ubuntu 9.04 上设置 CGI

在 Ubuntu 9.04 上设置 CGI

我查阅了很多指南,想找出我的 CGI 无法工作的原因,但似乎找不到原因。我的网站配置如下:

<VirtualHost *:80>
 ServerName  dev.domain.com

 # Directory Root.
 DocumentRoot /sites/dev.domain.com/www/

 # CGI Directory
 ScriptAlias /cgi-bin/ /sites/dev.domain.com/cgi-bin/
 <Location /cgi-bin>
   Options +ExecCGI
 </Location>
 <Directory /sites/dev.domain.com/www/bugzilla>
   Options ExecCGI
   AddHandler cgi-script cgi pl
 </Directory>

 # Logfiles
 ErrorLog  /sites/dev.domain.com/logs/error.log
 CustomLog /sites/dev.domain.com/logs/access.log combined
</VirtualHost>

我正在尝试在 /bugzilla 上安装 CGI。我不确定它是否在 cgi-bin 上运行。我还安装了 perl,使用sudo aptitude install libapache2-mod-perl2

更新

CGI bin 不在我的 www 目录中,有没有办法通过命令行对其进行测试?

答案1

首先给出一个明显的答案:您正在重新启动 Apache,对吗?

否则,我认为您不需要明确声明 /cgi-bin 的 +ExecCGI——ScriptAlias 指令应该会自动执行此操作。如果您想要这样做,为什么不直接在 bugzilla 目录上使用 ScriptAlias 指令呢?删除不必要的 Location 和 Directory 部分可能会有所帮助。

这对 cgi-bin 来说可以正常工作吗?如果可以,您可能希望通过使用 ScriptAlias 指令等将功能复制得更接近一些。

如果这些都无济于事,您能告诉我们具体是怎么失败的吗?您遇到了 404 错误吗?您的 cgi 脚本文本?


——Christopher Karel

相关内容