在PerlRun下运行Perl CGI脚本的错误

时间:2011-11-06 13:57:48

标签: perl apache2 cgi mod-perl

我正在尝试使用PerlRun在mod_perl 2.0下运行Perl CGI Web应用程序。在对脚本进行一些简单的更改后,一切似乎都有效。

然而,Apache error_log变得越来越大!快。

每个请求有很多很多错误,但它们有两种类型:

1)

Constant subroutine ModPerl::ROOT::ModPerl::PerlRun::var_www_html_myapp_main_2epl::RC_SERVICE_UNAVAILABLE redefined at /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/ModPerl/Util.pm line 69.

2)

Prototype mismatch: sub ModPerl::ROOT::ModPerl::PerlRun::var_www_html_myapp_main_2epl::RC_SWITCHING_PROTOCOLS: none vs () at /var/www/html/myapp/main.pl line 1054

这是main.pl的第1054行:

use LWP::Simple qw(!head);

如何摆脱这两类错误?

1 个答案:

答案 0 :(得分:3)

您的两条错误消息都与LWP :: Simple有关。 LWP :: Simple导出HTTP常量,这会导致重新定义的警告。当你使用LWP :: Simple尝试只包含你需要的函数时使用LWP :: Simple qw(get,getstore);您可能仍会在这些函数上看到原型不匹配错误。