什么都安装好了Mason就是不工作 请帮个忙

什么都安装好了Mason就是不工作 请帮个忙

什么都安装好了Mason就是不工作 请帮个忙
1 最近在Apache/2.0.55 (Unix) mod_perl/2.0.2 Perl/v5.8.7的基础上安装了HTML-Mason-1.3101,我用的是MandrivaLinux2006,Apache是编译安装的,http.conf里的Mason部分配置如下:
PerlModule HTML::Mason::ApacheHandler
<LocationMatch "\.html$">
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler
#PerlResponseHandler HTML::Mason::ApacheHandler
</LocationMatch>
然后我随便写了个hello.html:
% my $planet = "World";
Hello, <% $planet %>!
就是不工作
下面是我发现的错误
[root@localhost HTML-Mason-1.3101]# perl -e "use HTML::Mason::ApacheHandler;"
Undefined subroutine &Apache::perl_hook called at /usr/lib/perl5/site_perl/5.8.7/HTML/Mason/ApacheHandler.pm line 257.
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.

我想无论怎么样HTML::Mason::ApacheHandler应该可以工作的吧,上面的错误让我费解。
请各位大哥大姐指点!谢谢!
没人知道吗,Mason高手指点下吧,我只想知道Apache::perl_hook是哪里定义的,少哪个模块,非常感谢
mod_perl2.0么?估计是 lib.
mod_perl2.0么?估计是 libapreq 的问题,你下新的 [url=http://search.cpan.org/~joesuf/libapreq2-2.06-dev/]libapreq[/url] 安装试试,下回来的文档中有安装说明。
http://www.masonhq.com/?ApacheModPerl2

mason 在 mod_perl2.0 下要求以几个模块的版本如下(等于或高于)
CGI 3.08
libapreq2 2.05
HTML::Mason 1.30


终于解决了!--装了cnha.
终于解决了!
装了cnhacktnt说的三个东东还是有问题,后来搞了一下原来还是我配置有问题。现在我把我的配置贴出来:
http.conf里添加如下
[code]
# HTML::Mason pages
PerlModule HTML::Mason::ApacheHandler
Alias /mason/ "/var/www/mason/"
<Directory "/var/www/mason">
PerlSetVar MasonArgsMethod CGI
PerlSetVar MasonDataDir "/var/www/mason/data"
PerlSetVar MasonCompRoot "/var/www/mason"
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler
Order allow,deny
Allow from all
</Directory>
[/code]
根据上面的配置建立相应的目录,并设置目录用户:
root ~ # mkdir /var/www/mason && /var/www/mason/data
root ~ # chown apache /var/www/mason -R
root ~ # /etc/init.d/httpd restart

It works!
忘了说了,运行下面的命令.
忘了说了,运行下面的命令还是会有如下的“错误”发生
[root@localhost HTML-Mason-1.3101]# perl -e "use HTML::Mason::ApacheHandler;"
Undefined subroutine &Apache::perl_hook called at /usr/lib/perl5/site_perl/5.8.7/HTML/Mason/ApacheHandler.pm line 257.
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.

我想Apache::perl_hook应该是Apache运行的时候加载的模块里的函数吧,所以单独运行会有错误,希望高手能详细解释解释 谢谢
没错。。。 模块的文档里也很清楚的说明了它不能在 shell 里跑的