我刚安装了运行Apache Server版本的Oracle 64位Linux5.4系统:Apache / 2.2.3和mod_perl 2.
现在,我将Perl库设置在一个特定的路径中:/ my / perl / libs我调整了我的httpd.conf来补偿这个(我在下面添加了):
SetEnv MY_LIBS / my / perl / libs
在我的CGI程序中,我正在设置我的环境来补偿:
使用lib($ ENV {'MY_LIBS'});
有时我的Perl模块会识别/ my / perl / libs的路径并适当地调用所有函数,有时它们不会,因此会产生500错误。
当我重新启动apache(/etc/init.d/httpd restart
)时,一切正常,但随后出现500错误。
有什么想法吗?我应该看什么?
答案 0 :(得分:0)
你不能只在mod_perl2脚本中'使用lib'。您需要使用所需的'use lib'创建'startup.pl'脚本或添加PerlSwitches选项。见http://perl.apache.org/docs/2.0/user/config/config.html#Adjusting_C__INC
答案 1 :(得分:0)
我总是把这样的块放在我的httpd.conf中:
<Perl>
use lib "/my/perl/lib";
</Perl>
我把它放在任何PerlModule或其他与perl相关的配置设置之前。