gpt4 book ai didi

perl - 如何为 apache2 mod_cgi 指定 Perl 版本?

转载 作者:行者123 更新时间:2023-12-02 01:37:48 24 4
gpt4 key购买 nike

我在 Fedora 21 系统上安装了其他版本的 Perl。在 PATH 上,我的自定义 Perl (5.10.0) 优先于发行版的默认 Perl (5.18.4)

user$ perl -v
> This is perl, v5.10.0 built for x86_64-linux

root# perl -v
> This is perl, v5.10.0 built for x86_64-linux

但是,当在 Apache 服务的脚本中打印 Perl 版本时,它似乎使用了“错误”的版本:

5.018004

如何指示 Apache 使用特定版本的 Perl?

最佳答案

当使用纯 CGI 时,操作系统(通过 #! 行)负责选择解释器。正如我们已经确定的那样,shebang 指向了错误版本的解释器。

最简单的方法是编辑它。如果您需要相同的脚本根据调用上下文使用两个不同的 perl 版本,您可以在 shebang 中使用类似 #!/usr/bin/env perl 的东西来让它尊重环境,然后更改 Apache 的 PATH 变量。

如果您不能编辑 shebang,如果您不介意为整个网络服务器使用这个特定版本,则可以选择通过 mod_perl(确保您根据所需版本编译它) .

另一种方法是在某种容器(chroot、lxc、docker 或仅使用挂载命名空间)中运行网络服务器,以便您的 /usr/bin/perl 指向其他版本口译员。

关于perl - 如何为 apache2 mod_cgi 指定 Perl 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30146633/

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