免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: sandy_ye_1981
打印 上一主题 下一主题

问一个问题 [复制链接]

论坛徽章:
0
1 [报告]
发表于 2007-02-28 15:47 |显示全部楼层
原帖由 sandy_ye_1981 于 2007-2-28 14:33 发表
在http.conf里这样的.
<VirtualHost 68.109.139.5>
        ServerName modil.cititone.net
        ServerAlias modil.cititone.net
        CustomLog /var/log/apache/modil.cititone.net.log comb ...


$r是个request objective,它本身能有什么值?
你可以自己传几个参数进去看看能不能print就知道了.
改一下:

    my $r = shift;
    my $q = Apache::Request->new($r);

然后:

    my $name = $q->param('name');
    $r->send_http_header('text/plain');
    $r->print($name);
    return OK;

然后这样访问:
http://xx.xx.xx.xx/Modil/?name=test

看看能否print出结果.

论坛徽章:
0
2 [报告]
发表于 2007-02-28 17:46 |显示全部楼层
原帖由 sandy_ye_1981 于 2007-2-28 15:57 发表

首先感谢仙子..
但是..
我加了
my $r = shift;
print "Content-type: text/html\n\n";
print "11111111111111111111";
return OK;
是可以显示出来的.

而加
my $r = shift; ...


1) 你的apache有装mod_perl吗?
2) 有在文档目录下创建一个Modil目录吗?
3) mod_perl能找到Modil::Main模块吗?

论坛徽章:
0
3 [报告]
发表于 2007-02-28 17:51 |显示全部楼层
原帖由 sandy_ye_1981 于 2007-2-28 17:49 发表



第一点是肯定有的.因为有其他同样类型的项目在上面运行.
第二点也是有的.
但第三点怎么去检查??
仙子请教

看看error_log里有没有报错?找不到这个模块在日志里有提示的..
另外任何模块的改动(除了registry脚本),都要apachectl stop完全stop再apachectl start.

论坛徽章:
0
4 [报告]
发表于 2007-02-28 17:56 |显示全部楼层
原帖由 sandy_ye_1981 于 2007-2-28 17:55 发表



error_log里面没报错.之前是报Undefined subroutine &Modil::Main::handler called.\n
现在没有了
仙子我都是用/etc/init.d/apache restart的..你说只能stop 然后start对吧


yes,restart没有用的...

论坛徽章:
0
5 [报告]
发表于 2007-02-28 18:11 |显示全部楼层
原帖由 helbreathszw 于 2007-2-28 17:54 发表
就是perl -MModil::Main
你可以试验perl -MLWP


在shell目录里手工运行perl -M之类根本看不出问题.
大多数mod_perl有自己的库环境,通常在startup.pl里设置好.
我这里的好些mod_perl脚本用perl -c xxx.pl都通不过,只有在$ENV{MOD_PERL}下能运行.

论坛徽章:
0
6 [报告]
发表于 2007-02-28 18:21 |显示全部楼层
原帖由 helbreathszw 于 2007-2-28 18:18 发表
perl -e 'print join "\n",@INC';
然后发现自己的模块不在此路径的话
用export PERL5LIB=/usr/xxx/ 加入
呵呵,然后再perl -e 'print join "\n",@INC';
是不是出来哦
笨人用apache的那种 ...


可怜的人,不知你听说过Apache::DBI没有?

论坛徽章:
0
7 [报告]
发表于 2007-02-28 18:21 |显示全部楼层
原帖由 sandy_ye_1981 于 2007-2-28 18:18 发表



仙子啊.那这个startup.pl文件在哪??
我最奇怪..而且不知道怎么debug的地方是
mod_perl是调用了handler了.但没有传这个参数my $r = shift;


加偶的AIM吧: perlonunix,偶帮你看下..
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP