apache - 无法在 @INC 中找到模块 main 的可加载对象

标签 apache perl mod-perl

在运行在 ubuntu 16.04 上的 mod_perl 应用程序中,一段时间后一切正常(几天),我们在错误日志中收到一条致命消息:

failed to resolve handler MyHandler::ModPerl20 Can't locate loadable object for module main in @INC



MyHander::ModPerl20 在位置 block 中定义
<Perl>
     unshift @INC, '/path/to/my/code';
</Perl>
<Location ~ "/imp($|/)">
    SetHandler modperl
    PerlResponseHandler MyHandler::ModPerl20
</Location>

ubuntu Perl 版本是 5.22。 Apache 2.4

这可能是问题吗?
http://blog.feature-addons.de/2016-05-15-otrs-apache-mod-perl-perl-5-22

任何想法如何解决这一问题?我真的必须设置 nginx/uwsgi 吗?

最佳答案

确保 @INC设置正确,以便找到 MyHandler::ModPerl20 所在的路径已安装(我认为发生的情况是,当 Apache 回收一些 child 时,重新开始的 child 没有正确的 @INC 值,因此不再找到您的模块)。

尝试添加一个PerlSwitches -I/your/path/for/myhandler/在 httpd.conf 中查看它是否解决了您的问题。

如果情况有所改变,请查看 Adjusting @INC在 modperl 文档中查看所有详细信息。

关于apache - 无法在 @INC 中找到模块 main 的可加载对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41768004/

相关文章:

ruby-on-rails - 如何防止 Rails 中的浏览器页面缓存

perl - 这个混淆的 bash/perl 代码有什么作用?

perl - 无法在 PERL 中将字符串转换为十六进制

apache - Htaccess no-follow no-index 基于域名结尾

php - 保护文件不被直接访问

php - .htaccess 拒绝子文件夹中的文件

windows - 如何在不在脚本路径前键入 "perl"的情况下从 Cmd 运行 Perl 脚本?

perl - 如何获取 WWW::Mechanize 中所关注链接的内容?

perl - 无法 ssh :unable to establish master SSH connection: bad password or master process exited unexpectedly

Perl : Standard Application development approach