免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2493 | 回复: 1
打印 上一主题 下一主题

[Web] Apache中开发的module不能用于Cgi? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-01 09:36 |只看该作者 |倒序浏览
最近开发了一个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之前!

[ 本帖最后由 shileiofchina 于 2007-8-1 11:42 编辑 ]

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2007-08-01 11:07 |只看该作者
http://man.chinaunix.net/newsoft ... d/core.html#options

ExecCGI
允许使用mod_cgi执行CGI脚本。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP