问题标签 [mod-perl2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3760 浏览

perl - 带有 mod_perl2 的草莓 Perl:从 CPAN 构建 Apache2 模块

按照 mod_perl 邮件列表中的这些说明安装了 Strawberry Perl 5.10 和 mod_perl2,没有问题。但是,尝试安装Apache2::我的脚本使用的各种模块会导致错误。Apache2::Reload尽管如此,我还是能够安装一个( ):

...只需将几个 .pm 文件复制到site/lib. 然而,其他的我不太确定。例如,Apache2::RequestRec给我以下错误:

Apache2::在 Strawberry Perl 下编译模块有什么技巧吗?我还需要编译自己的 Apache 二进制文件吗?(如果是这样,我可以使用 Strawberry 提供的 make 工具来做到这一点吗?)

0 投票
3 回答
473 浏览

perl - Strawberry Perl 和 mod_perl2 下奇怪的 Apache2::Cookie 错误

我有一组在 ActivePerl 5.10 下运行的脚本。但是,在 Strawberry Perl 5.10 下,我收到一条奇怪的错误消息:

但是,MyCookie是 cookie 本身的名称,而不是任何 Perl 包的名称。

如果我注释掉 Cookie.pm 的第 41 行,脚本会运行,但我无法再成功获取或设置 cookie。

错误消息似乎有些正确,因为我也找不到cookie_class(除了在 POD 文件中提到的地方)。也就是说,我的 ActivePerl 安装也是如此。

我想是在C:\strawberry\perl\site\lib\auto\APR\Request\Request.dll--怎么在Strawberry下找不到,在ActivePerl下可以?

0 投票
1 回答
195 浏览

perl - PerlInputFilterHandler 一次又一次地调用自己

它与 mod_perl 有关。

我的位置标签中只指定了一个过滤器。

在这里,当我在浏览器中点击http://localhost/testproj/AServlet URL 时。它只是挂起。Test3 过滤器一次又一次地调用自己。我只想执行一次 Test3 过滤器并将控制权传递给“AServlet”资源。

我该怎么办?

谢谢。

0 投票
2 回答
1553 浏览

perl - 如何使用 mod_perl 修改发布请求内容

如何使用 mod_perl 的过滤器/处理程序修改发布请求内容?

我可以在 PerlResponseHandler 中读取请求内容,但如何将修改后的内容“附加”回请求中?

另外,我不想在 PerlResponseHandler 中执行此操作,因为我希望请求的资源来处理响应生成部分。

任何帮助将不胜感激。

谢谢。

0 投票
2 回答
4354 浏览

perl - 在 Windows 上安装 CPAN 模块

我正在尝试在 Windows 7 上安装 CPAN 模块。我没有 Active Perl,因此无法使用 PPM 包。

所有站点上给出的步骤都包括这三个步骤:make、make test 和 make install。我知道 make 是 unix 命令,不会在 Windows 上运行。

我应该在 Windows 上运行什么命令来完成安装?

如其中一个站点所述,我从 CPAN 站点下载了 dmake,但是当我运行它时,它会出现以下错误-

D:\Parse-RecDescent-1.965001.tar\Parse-RecDescent-1.965001>D:\dmake\dmake\dmake dmake: 错误: -- `D:\indigoampp\perl-5.12.1\libConfig.pm' not found,并且不能制造

请让我知道如何完成这些步骤。谢谢!

PS:同样,PPM 不是一个选项。


感谢大家。

在 indigoampp\perl-5.12.1\lib 位置有一个名为 Config_heavy.pl 的文件。它有一行:make='nmake'。当我使用 dmake 命令时,我将其更改为 make='dmake' 。

在此之后,我不需要在每个模块的 Makefile 中更改 DIRFILESEP。它现在正在生成 \\ 如上述链接中所述。

所以我现在可以运行 dmake、dmake test 和 dmake install。然而它什么也没做。它没有在各个位置复制 pm 文件/文件。为什么这样??

无论如何,我手动复制了 pm 文件/文件,希望一切正常。但是,我以前也可以这样做。为什么我运行 makefile.pl 和 dmake 命令?

另外,我的目标是安装 Apache2::Request 模块。我发现它依赖于多个模块。我下载了这些模块并为它们运行了上面的命令 - 没有错误。最后,当我为 Apache2::Request 模块运行这些步骤时,我在 dmake 命令中收到以下错误:

我在 libapreq2-2.12.tar\libapreq2-2.12 文件夹下的 Makefile 中没有发现任何可疑内容。Makefile 的部分内容(在错误行周围)是:

任何人都可以帮助解决这个和上述问题(为什么它没有自动复制 pm 文件)?谢谢你的时间!

0 投票
1 回答
105 浏览

perl - 从 PerlInputFilterHandler 生成响应时出错

我的 httpd.conf 位置标签中只有一个过滤器:

测试是一个 PerlInputFilterHandler。

如果我在此过滤器中有以下代码:

它产生响应——换句话说,它发送“欢迎!!!” 到浏览器。

但是,如果我遵循代码(启用注释代码):

这行不通。“欢迎!!!” 不会进入浏览器 - '404' 会。

你能在这里提出一些建议吗?

非常感谢!

0 投票
1 回答
89 浏览

perl - 过滤器未按预期工作

这是关于 mod_perl2 过滤器的。

理想情况下,过滤器的工作是处理输入数据并将数据传递给下一个过滤器或实际请求的资源。

就我而言,我为 URL 模式定义了一个 PerlInputFilterHandler。请参阅下面的位置标签:

此过滤器 (Test10) 应该更改请求数据并将控制权传递给 AServlet(部署在 WebLogic Server 上的 servlet)。

然而,这个过滤器被调用,但它没有将控制权传递给 AServlet——不管我在过滤器中写了什么。为什么这样?

谢谢。

0 投票
1 回答
344 浏览

mysql - 如何在 Apache::DBI 中禁用 ping?

我在禁用Apache::DBI.
perldoc

Apache::DBI->setPingTimeOut($data_source, $timeout)

这配置了 ping 方法的使用,以验证连接。将超时设置为 0 将始终使用 ping 方法(默认)验证数据库连接。设置超时 < 0 将停用数据库句柄的验证。

我尝试setPingTimeOut使用与中相同的 $data_source 进行调用,connect()但没有成功。有没有人设法禁用ping?

0 投票
1 回答
363 浏览

apache - Apache mod_perl2 迁移问题

我在 /etc/init.d/apache2/conf.d/ 下有一个使用 Perl 部分的 apache2 配置文件。

我只是想测试一个模块是否被加载并适当地配置 apache。

这是我在重新启动时看到的错误。我也试过 Apache2->method 但得到同样的错误。

# /etc/init.d/apache2 restart 重新启动 Web 服务器:Debian 5.0.7 的 apache2Building Appliance 配置 /etc/apache2/conf.d/foobar.conf 的第 73 行语法错误:\t(在清理中)不能在 /etc/apache2/conf.d/foobar.conf 第 357 行通过包“Apache”定位对象方法“模块”(也许您忘记加载“Apache”?)。\n 失败!

我不认为这是一个@INC 问题......并且 apache 和 libapache2-mod-perl2 软件包都已安装。事实上,如果我把这条线注释掉,perl 的其余部分实际上运行良好。

我也尝试过使用 Apache::compat 和“Apache2->module”。
我怀疑问题是在 startup.pl 中缺少某些东西 - 但我一直在谷歌搜索和阅读 mod perl 文档并转圈圈。任何建议stackoverflow???

顺便说一句-我的startup.pl:

0 投票
2 回答
375 浏览

perl - ModPerl::RegistryPrefork 应该让我的旧 cgi 工作但是

我在 CGI.pm 下开发了一个网络应用程序。我想切换到 mod_perl2。我的 webapp 在 CGI 下工作,但是当我尝试更改 mod 时,它不再工作,而我没有更改 webapp 中的任何内容,除了在 mod_perl 下运行的 apache conf 文件。

我已经安装了 mod-perl2 并像这样配置我的 VirualHost:

我的脚本看起来像 . 他在 /v6/cgi-bin/lib/ 中使用了一些模块

Apache2 在日志中写入错误:

[Thu Feb 3 17:35:13 2011] -e: DBI connect(':','',...) failed: Access denied for user 'www-data'@'localhost' (using password: NO) at lib/Connexion.pm 第 134 行

在浏览器中我有:

无法在 lib/Search.pm 第 51 行对未定义的值调用方法“prepare”。

所以我知道脚本无法连接到数据库。但是为什么呢?它正在处理 mod_cgi。如果有人有想法:'(谢谢。