当前位置:  开发笔记 > 编程语言 > 正文

为什么我的CGI脚本抱怨"无法在@INC中找到CGI/Session.pm"?

如何解决《为什么我的CGI脚本抱怨"无法在@INC中找到CGI/Session.pm"?》经验,为你挑选了1个好方法。

我有一个html文件,它将接受并发送登录名和密码.它被发送到login.cgi文件.

**

html文件

**

Username
Password

**

特等

**

#!/usr/bin/perl

  # login.pl
  use CGI;
  use CGI::Carp qw/fatalsToBrowser warningsToBrowser/;
  use CGI::Session ( '-ip_match' );

  $q = new CGI;

  $usr = $q->param('usr');
  $pwd = $q->param('pwd');

  if($usr ne '')
  {
      # process the form
      if($usr eq "demo" and $pwd eq "demo")
      {
          $session = new CGI::Session();
          print $session->header(-location=>'home.html');
      }
      else
      {
          print $q->header(-type=>"text/html",-location=>"LoginHtml.html");
      }
  }
  elsif($q->param('action') eq 'logout')
  {
      $session = CGI::Session->load() or die CGI::Session->errstr;
      $session->delete();
      print $session->header(-location=>'LoginHtml.html');
  }
  else
  {
      print $q->header;
      print <
          
          Username: 

          Password: 


          
          
  HTML
  }

启动apache服务器后,我打开页面并输入用户名作为demo和密码作为demo,然后单击按钮.

我收到以下错误:

软件错误:

无法在@INC中找到CGI/Session.pm(@INC包含:/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/ i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5/usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi/usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8/usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5/usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/ i386-linux-thread-multi /usr/lib/perl5/5.8.8.)at /var/www/cgi-bin/login.pl第6行.BEGIN失败 - 编译在/ var/www/cgi-bin中止/login.pl第6行.

如需帮助,请发送邮件给网站管理员(root @ localhost),提供此错误消息以及错误的时间和日期.

请帮我解决这个错误.

**

编辑1

**

安装CGI-Session-4.42后问题已解决.

感谢大家,感谢您的帮助.



1> Alexandr Cio..:

您需要安装CGI :: Session.最好的方法是使用您的OS包管理器.在Fedora/Redhat或类似的情况下yum install perl-CGI-Session.在Debian中,apt-get install libcgi-session-perl.如果要使用cpan shell进行安装,请在整个日志中粘贴错误并在此处发布链接.

推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有