gpt4 book ai didi

perl - 将 Perl 脚本作为 CGI 脚本运行 vs 从 cmd 行运行

转载 作者:行者123 更新时间:2023-12-04 04:55:12 25 4
gpt4 key购买 nike

我正在尝试将 Perl 脚本作为 CGI 脚本运行。当我从 cmd 行运行 perl 脚本时,它运行得非常好,但是当我从浏览器运行它时,它显示以下错误。

Storable object version 1.012 does not match $Storable::VERSION 1.010 at
C:/Perl/lib/DynaLoader.pm line 225.
Compilation failed in require at C:/Perl/site/lib/AsiaXMLUtils.pm line 20.
BEGIN failed--compilation aborted at C:/Perl/site/lib/AsiaXMLUtils.pm line 20

相关的 perl 脚本基本上被设计为将一些作业排队到远程软件。
如果它响铃,上述文件中的第 20 行是:
use Storable qw(&retrieve &store);

以下是我所做的事情:
  • 我在 how to troubleshoot your CGIscript 上查看了以下页面但还没有解决这个问题。
  • 我已经检查过我的 PC 的 perl 版本是否相同
    用于我发送脚本的软件。我猜有
    那是个问题,我将无法运行脚本
    从命令行要么。
  • 我已经使用相同的基本 html 代码运行了一个简单的 Perl CGI(hello world)脚本,所以我想这意味着我没有将 cgi 文件(或访问它们)放在错误的位置。

  • 我正在为完成这项任务设定最后期限,我想应该问我应该采取什么方法来解决这样的问题。我是 Perl 的新手。任何关于我应该阅读以解决问题的线索将不胜感激。无论如何,我不能共享代码,因为其中大部分是专有的。

    最佳答案

    Storable 是一个 XS 模块,这意味着它在 Storable.dll(或 Unix 上的 Storable.so)中具有 C 代码,在 Storable.pm 中具有 Perl 代码。该错误表明 Storable.dll 的版本(“Storable object version 1.012”)与 Storable.pm(“$Storable::VERSION 1.010”)不匹配。如果您可以从命令行运行脚本,这意味着您的网络服务器正在使用不同版本的 Perl,或者 @INC是不同的,或者您的网络服务器目录中可能有一个额外的 Storable.dll。

    关于perl - 将 Perl 脚本作为 CGI 脚本运行 vs 从 cmd 行运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16850976/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com