问题标签 [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 回答
334 浏览

perl - 是否有等效于 PHP 的 ignore_user_abort() 的 mod_perl2/Perl 5?

我正在编写一个内部服务,它需要为一个长时间运行的进程接触 mod_perl2 实例。该作业从 HTTP POST 触发,mod_perl 处理程序将其拾取并完成工作。这可能需要很长时间,并且可以异步处理,所以我希望可以在 HTTP 连接运行时终止它。

PHP 有一个功能ignore_user_abort(),当与正确的标头结合使用时,可以提前关闭 HTTP 连接,同时让进程保持运行(此技术在 SO 上多次提到)。

Perl 有等价物吗?我还没有找到一个。

0 投票
1 回答
644 浏览

perl - 如何在 mod_perl2 中配置 PerlSection?

我正在尝试使用 a[PerlSection][1]来获取服务器名称,然后使用它来配置一些RewriteCond-RewriteRule对和其他一些东西。看来我走不了多远了。它说你可以这样做:

但是尝试启动 Apache 我得到这个语法错误:

然后文档引用了我可以在发行版中找到的这两个文件,例如/httpd.conf.pl 和 eg/perl_sections.txt,但是mod_perl2 发行版甚至没有eg目录,而原始 mod_perl 的 eg dir 没有'也没有这些文件。

谷歌也没有帮助,因为“您的搜索 - perl_sections.txt 站点:http ://perl.apache.org/dist/ - 不匹配任何文档”并且没有站点限制,除了文档之外,我看到的都是一个发布询问这些文件被复制的所有内容而没有答案。

任何人都有任何关于如何实际使用 <Perl> 部分的资源?

0 投票
1 回答
302 浏览

apache2 - Apache2.2 APR 加载错误

服务器毫无怨言地启动,但是一旦我点击需要 Apache2 模块的页面,例如 Apache2::Cookie,它就会死掉:

0 投票
5 回答
1340 浏览

perl - 通过 mod_perl 将命令行 perl 脚本的输出发送到浏览器

我有一个普通的 perl 脚本,可以通过perl -w test.pl. 然后我有一个可以从网络浏览器访问的 mod_perl2 脚本。我想让后者调用前者并将输出发送到浏览器,同时刷新。

mp2 脚本没有shebang 行,因为它是mod_perl,所以它不知道在哪里perl。此外,调用system('perl -w c:\\path\\to\\test.pl')会导致错误:

由于某种原因我无法弄清楚,因为它在我的路径变量中。也许不是因为 Apache 正在运行的帐户。

是否有某种方法可以运行脚本并捕获其输出,而无需通过调用 perl 可执行文件system()?即,使用已经加载的解释器的东西?

0 投票
1 回答
925 浏览

mysql - mod_perl 应用程序有奇怪的间歇性 mysql 驱动程序问题

在完全随机的时间,我的 mod_perl 脚本无缘无故崩溃,这是我得到的错误:

[error] install_driver(mysql) failed: Attempt to reload DBD/mysql.pm aborted.\nCompilation failed in require at (eval 20) line 3.\n\n at

但等待它变得更好。有时是这样的:

[error] install_driver(mysql) failed: Can't load '/usr/lib/perl5/auto/DBD/mysql/mysql.so' for module DBD::mysql: /usr/lib/perl5/auto/DBD/mysql/mysql.so: failed to map segment from shared object: Cannot allocate memory at /usr/lib/perl/5.10/DynaLoader.pm line 196.\n at (eval 17) line 3\nCompilation failed in require at (eval 17) line 3.\nPerhaps a required shared library or dll isn't installed where expected\n at

请注意,当我处于开发模式 atm 时,我是唯一一个使用此应用程序的人,所以我怀疑这是一个并发问题。

一切都很好,否则很奇怪。我在运行 Debian 5.0 和 apache 2 和 mysql 5.0.51a-24+lenny2 的 VPS 上

谢谢你的帮助!

0 投票
8 回答
13146 浏览

perl - 你推荐什么 Perl RESTful 框架?

您好我正在寻找一个 Perl RESTful 框架,它必须:

  • 在 apache2/mod_perl2 下工作
  • 简单
  • 优雅
  • 轻一点
  • 变通

我只是在做梦还是可以避免“自己动手”的方法?

你会推荐什么框架?

0 投票
3 回答
1863 浏览

perl - 如何抑制 mod_perl 中的默认 apache 错误文档?

我正在开发一个 RESTful API,并编写了一个处理请求的 mod_perl2 处理程序。

我的处理程序通过设置$r->status($http_code)return $http_code;

一切都很好,除了一个小问题:当我的 http_code 不是 200(例如 404)时,apache 会在我自己生成的响应中附加一个默认的 HTML 错误文档。

例如:

给出:

如何摆脱这个 apache 生成的 HTML?

更新:我的错。我的 mod_perl2 处理程序返回的是 HTTP_* 代码,而不是 Apache2::Const::OK。

0 投票
3 回答
1841 浏览

browser - 浏览器缓存控制,动态内容

问题:我似乎无法让 FireFox 缓存从动态服务器发送的图像

设置:静态 Apache 服务器与后端动态服务器 (mod_perl2) 的反向代理。

这是服务器的请求 URL。它被发送到动态服务器,其中 cookie 用于验证对图像的访问:

请求标头

动态服务器将图像流回服务器,并提供以下响应:

响应标头

到目前为止,一切都很好(我认为)。但是,在重新加载页面时,图像不会出现缓存,并且会再次发送请求:

请求标头

似乎不应该发生请求,因为浏览器应该已经缓存了图像。实际上,收到了 200 响应,与第一个响应相同,并且图像似乎被重新获取(尽管浏览器似乎正在使用缓存的图像)。

上面的重新加载请求标头中的 Cache-Control: max-age=0 似乎暗示了该问题。

有谁知道为什么会这样?也许是响应中的Via标头导致了问题?

0 投票
1 回答
264 浏览

perl - Apache 2 和 Perl 的身份验证模块问题

我是 SharePoint 开发人员,试图让 Perl 模块与 Subversion 一起使用,但我认为我的语法有问题。我只需要获取用户名和密码,将其传递到 Web 服务,获取真/假并根据该信息进行身份验证。下面是 Perl 中模块的代码:

如果有人有任何建议,请告诉我。我在 Apache Config 文件中收到类似的错误:Can't call method "value" on an undefined value at C:/usr/site/lib/Apache2/AuthGetUser.pm 第 30 行。感谢您所做的一切。如果我得到这个工作,我将有一篇博客文章即将发布。

0 投票
4 回答
730 浏览

perl - IPC::Open3 在 Apache 下运行失败

我有一个模块使用 IPC::Open3(或 IPC::Open2,两者都存在这个问题)来调用外部二进制文件(在这种情况下为 bogofilter)并通过子输入文件句柄为其提供一些输入,然后从子输出句柄。该代码在大多数环境中运行时都可以正常工作。但是,此模块的主要用途是在 Apache 2.2.6 下运行的 Web 服务中。在那种环境下,我得到了错误:

无法 fdopen STDOUT:参数无效

这只发生在代码在 Apache 下运行时。以前,该代码构建了一个极其复杂的命令,其中包括一个用于输入的 here-document,并使用反引号运行它。这行得通,但速度很慢,而且容易以独特而令人费解的方式中断。我讨厌不得不恢复到旧版本,但我无法破解这个。