问题标签 [mod-perl]

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 投票
1 回答
89 浏览

perl - 过滤器未按预期工作

这是关于 mod_perl2 过滤器的。

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

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

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

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

谢谢。

0 投票
2 回答
818 浏览

apache - mod_perl 分段错误

你好,

我在 Oracle64 位(Red Hat 克隆)上运行 apache 2.2.3,但遇到了问题。我有一个使用 MIME::Lite 通过 sendmail 发送邮件的程序(我很抱歉,不确定我正在运行什么版本的 sendmail 或 mod_perl,尽管我相信 sendmail 部分与您稍后会看到的无关)

有时,apache 会出现段错误 (11),然后深入研究 MIME::Lite 模块,我发现它位于以下行:

现在,人们会自动怀疑 sendmail,但如果我使用同一行来使用 /bin/cat(如图所示):

apache仍然有段错误。

我将 strace 附加到 apache 进程并看到以下内容:(当它不崩溃时)

注意“SENDMAIL sent_by_sendmail”是我的评论。您可以清楚地看到管道打开。当它确实崩溃时,您将看到以下内容:

现在注意它从不管道。我已经尝试过 GDB,但它并没有真正向我展示任何东西。

最后,我编写了一个简单的程序来运行 mod_perl 和常规 cgi:

在 mod_perl 下它已成功崩溃。

我的分析告诉我它与尝试打开文件句柄有关,管道函数返回错误或损坏的文件句柄。

我还将文件描述符限制增加到 2048,没有骰子。

有人对我应该看哪里有任何想法吗?有什么想法吗?

我很感激帮助

0 投票
2 回答
676 浏览

web-services - 客户端的 mod_perl 服务器事件

使用 Web 服务实现服务器到客户端回调(事件)的好方法是什么?

我们已经在 Apache 上运行了一个由 mod_perl 公开的基于 SOAP 的 API,但它是客户端到服务器的一种方式。我们需要将其他客户端在服务器上的某些更改通知客户端。

什么是使这项工作的好方法?perl 的可用模块?

我们想到的一件事是发出一个长时间运行的 Web 请求,该请求最终会在事件发生时做出响应,但是如果连接了许多客户端,这似乎会使太多的 mod_perl 进程继续运行。

0 投票
1 回答
550 浏览

perl - 需要帮助在 Windows 机器上安装 Apache::Registry

我正在尝试在我的 Windows 机器上安装 Apache::Registry。但是,我无法做到这一点。因为,它要求 Apache.exe 位置。当我给它完整path("C:\Apache2.2\bin\httpd.exe")时,它会出现以下错误。请帮助我克服这个问题。

提前致谢。

-安吉

0 投票
1 回答
296 浏览

perl - 将自定义 die() 处理程序注入 mod_perl SOAP 处理程序

我们在$server = SOAP::Transport::HTTP::Apache->new; $server->dispatch_with(...)这里使用 over 作为基于 JS 的应用程序的后端。如果底层模块死掉,它会发回一个很好的错误消息,由 JS 代码显示。

问题是,我想要更详细的消息(例如 Carp::longmess),以及 STDERR 上的硬拷贝。

如何以最少的代码修改将自定义异常处理程序注入 SOAP::Transport::HTTP::Apache?

(这是一个我们负担不起重写的大而老的项目,尽管老实说它值得重写)。

更新:这是一个示例错误消息:

我收到了 Tangram 错误,但这不太可能是 Tangram 中的错误,无论如何我需要完整的堆栈跟踪。OTOH,die 消息进入了 SOAP 消息,这不是正常的 die 动作,所以在某处有一个处理程序——我想对其进行一些自定义。

0 投票
1 回答
164 浏览

apache2 - 用于从通配符获取子域的 Apache 插件 perl 脚本

我在这个阶段遇到了一个问题,我已经设法解决了这个问题,但唯一的问题是找出 perl 如何实现这一点。

这是链接的当前结构:

这是我目前拥有的 VirtualHost:

上面显示了当前的 VirtualHost 结构,以及需要子域模式的位置。我查看了 mod_perl 并启用了它,现在也明白我可以添加标签了。然而,我的 perl 技能是有限的,如果不是不存在的话。

我在这里看到了答案,我相信它与我的有点相似,但需要更多的模组:https ://serverfault.com/questions/85256/using-url-within-vhost-container-with-mod-perl-dynamically

有人可以告诉我如何实现这一目标和/或为我指明正确的方向吗?

非常感谢,肖恩

0 投票
3 回答
1807 浏览

perl - 如何将调试器与 mod_perl 一起使用

我正在尝试将 Perl 调试器附加到 Apache 和 mod_perl。我们的环境非常复杂(使用 Apache 配置了很多额外的东西(例如 Catalyst))并且配置它的工程师不再在公司工作。我已按照 Apache 网站上的说明进行设置,设置“PerlFixupHandler Apache::DB”等,但到目前为止,我得到的只是 在页面交付后中断调试器。我猜我在调度过程中得到了中断,而不是工作进程。我正在运行 Apache 的 prefork MPM 版本。调试说明说在启动 httpd 时传递 -X 参数。但是我正在运行的 httpd 不接受 -X 参数。我假设 -X 参数实际上会导致某些版本的 httpd 不分叉?

任何和所有的指导表示赞赏。

0 投票
1 回答
200 浏览

perl - Perl/mod_perl:将使用的模块映射到带有特殊字符的路径


可能我的问题很简单,但我在文档中找不到答案,希望有人能提供帮助。

问:映射文件名和文件系统路径以使用'd / require 'd 模块和用于声明的名称的规则是什么,尤其是在使用点或逗号等非标准符号时?找到与这些场景相关的 mod_perl 的PerlModulePerlRequire Apache 指令的类似答案也很好。

作为一个具体的例子,我有一个 mod_perl 项目位于带有点和逗号的路径中

必须在 Apache 的conf文件中加载一个模块的代码:

我还必须像这样声明我的包裹

(我从@INC 指向/var/www/projects 的自定义路径之一)

当然,这是行不通的。这些路径必须映射到其他东西。还是根本不可能,每个人都必须使用仅包含字母数字符号和下划线的路径?

提前感谢您的任何帮助/回答。

0 投票
2 回答
482 浏览

perl - 将 Archive::Zip 压缩文件打印到 Apache2::RequestIO 对象

我有一个使用 mod_perl 的网站。

我正在内存中创建一个 zip 文件(使用Archive::Zip),并且我想提供该文件而不必将其写入磁盘。

Archive::Zip只会输出到指定的文件句柄,我不认为Apache2::RequestIO提供给我一个。

目前,我只是将 Zip 文件打印到 *STDOUT,这样就可以了。但我确信有更好的方法来做到这一点。我正在通过 RequestRec 对象打印其他所有内容,例如$r->print(...)

0 投票
2 回答
2235 浏览

perl - Perl 的 Log::Log4perl 的日志级别可以在不更新配置的情况下动态更改吗?

我有一个在 mod_perl 下运行的 Mason 模板,它使用 Log::Log4perl。

我想更改特定附加程序的日志级别,但是更改配置太尴尬了,因为它必须通过我们的部署过程才能上线。

有没有办法在运行时更改附加程序的日志级别,在 Apache 启动之后,而不更改配置文件,然后让该更改影响任何新的 Apache 线程?