我正在尝试使用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);
如何摆脱这两类错误?
答案 0 :(得分:3)
您的两条错误消息都与LWP :: Simple有关。 LWP :: Simple导出HTTP常量,这会导致重新定义的警告。当你使用LWP :: Simple尝试只包含你需要的函数时使用LWP :: Simple qw(get,getstore);您可能仍会在这些函数上看到原型不匹配错误。