【问题标题】:apache cannot load perl module that is installed manulally using make and installapache 无法加载使用 make 和 install 手动安装的 perl 模块
【发布时间】:2012-08-03 18:47:09
【问题描述】:

Perl - CGI

apache 无法加载使用 make 和 install 手动安装的 perl 模块。 在 apache 日志中,它给出了错误的说法 - 在 @INC 中找不到模块。

虽然通过 CPAN 安装的模块可以正常工作。

请帮忙

#!/usr/bin/perl
use lib qw(/home/appsadm/Infoblox_Perl_API/Infoblox-6.0040000164053);
use lib qw(/usr/lib/perl5/5.8.8/CPAN/LWP/); 
use LWP::UserAgent;
use Infoblox::Session;

local ($buffer, @pairs, $pair, $name, $value, %FORM);   
    $ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/;
    if ($ENV{'REQUEST_METHOD'} eq "POST")    {
        read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
    }else {
        $buffer = $ENV{'QUERY_STRING'};
    }

    @pairs = split(/&/, $buffer);

    foreach $pair (@pairs)
    {
        ($name, $value) = split(/=/, $pair);

        $value =~ tr/+/ /;

        $value =~ s/%(..)/pack("C", hex($1))/eg;

        $FORM{$name} = $value;
    }

    $username = $FORM{username};
    $password  = $FORM{password};

my $appliance = '161.19.15.8';

$session =  Infoblox::Session->new(  master => $appliance,  username => "admine", password=> "prafgd1"  );

【问题讨论】:

    标签: perl apache cgi


    【解决方案1】:

    如果模块安装在dir 并且dir 不是@inc 的一部分,则可以

    use lib qw(dir);
    

    在程序开始时,在使用模块之前。

    【讨论】:

    • 我做到了。使用库 qw(/home/appsadm/Infoblox_Perl_API/Infoblox-6.0040000164053);但是在我使用 Infoblox::Session->new 的代码中,它给出了错误....无法通过包“Infoblox::Session”定位对象方法“new”(也许你忘记加载“Infoblox::Session "?) 在 /var/www/cgi-bin/infoblox_login.cgi 第 31 行。
    • @user1579557:然后将相关代码添加到您的问题中,以证明该问题。
    • 我是堆栈溢出的新手,我的代码没有被接受......为什么会这样?有特殊的格式吗?
    • @user1579557:你应该可以点击你的问题下方的edit并添加你的代码...在use lib qw(/home/...);之后,你是否添加了use Infoblox::Session;
    • 发布了代码...现在错误日志显示 Can't locate LWP/UserAgent.pm in @INC(@INC 包含:/usr/lib/perl5/5.8.8/CPAN/LWP/ /home/appsadm/Infoblox_Perl_API/Infoblox-6.0040000164053 /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8 /i386-linux-thread-multi /usr/lib/perl5/5.8.8 .) 在 /var/www/cgi-bin/infoblox_login.cgi 第 5 行,引用者:161.69.112.45/login.html
    猜你喜欢
    • 1970-01-01
    • 2011-11-24
    • 1970-01-01
    • 1970-01-01
    • 2020-06-08
    • 1970-01-01
    • 2020-05-07
    • 2011-06-15
    • 1970-01-01
    相关资源
    最近更新 更多