Apache中开发的module不能用于Cgi?

Apache中开发的module不能用于Cgi?

最近开发了一个apache module,类似与Java中的ServletFilter,就是在请求之前做一些 处理。比如,访问某些URL是需要认证的。那么经过我们的Module的时候,如果没有登录,就把当前请求Rediret到我们的登录画面!

项目开发的时候,测试环境是 apahce+mod_jk+tomcat,开发的module没有问题,可以模拟java的Filter功能!
项目交付以后出了一个大问题。就是在测试Cgi的时候出现了问题。

比如:CGI的配置是如下的时候,我们的module就不会起作用!
ScriptAlias /cgi-bin/ "/opt/apache_2.0.54/cgi-bin/"
也就是说,这个时候,根本就不会经过我们的module,直接被Scripthandler给处理掉了!


但是,如果改为:
Alias /cgi-bin/ "/opt/apache_2.0.54/cgi-bin/"
我们的module就会起作用。但是访问/cgi-bin/下的cgi的时候,只是原封不动的把内容显示出来了,cgi并没有执行!

急!

更新: 在Linux下不可以实现我们要的功能!但是Solaris下却可以!

再次更新: 晕,问题解决了。 跟module的加载顺序有关。
改为:
LoadModule XXXXX_module modules/mod_XXXXX.so
  LoadModule cgi_module modules/mod_cgi.so
就可以了。

出错的时候,是把mod_cgi.so 放在了我们的module之前!

http://man.chinaunix.net/newsoft ... d/core.html#options

ExecCGI
允许使用mod_cgi执行CGI脚本。