Linux:为 Apache 2 安装和配置 mod_perl

举报
Tiamo_T 发表于 2022/04/04 17:58:05 2022/04/04
【摘要】 如果您正在运行任何用 perl 编写的基于 Web 的开源应用程序,您应该将 mod_perl 与 Apache 一起使用,而不是将其作为 CGI 运行。mod_perl 比使用 CGI 运行 Web 应用程序要快得多。

如果您正在运行任何用 perl 编写的基于 Web 的开源应用程序,您应该将 mod_perl 与 Apache 一起使用,而不是将其作为 CGI 运行。mod_perl 比使用 CGI 运行 Web 应用程序要快得多。

本文解释了如何在 Apache 2 上安装 mod_perl。

首先,安装 Apache 2(如果您还没有的话)。

1. 下载 mod_perl

从 perl.apache.org 下载 mod_perl,如下所示。

# cd ~

# wget http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz

# tar xvfz mod_perl-2.0-current.tar.gz

# cd mod_perl-2.0.4/

2. 用 Apache2 配置 mod_perl

将 Apache 2 的安装位置指定到 mod_perl,如下所示。

# perl Makefile.PL MP_APXS=/usr/local/apache2/bin/apxs

Reading Makefile.PL args from @ARGV
  MP_APXS = /usr/local/apache2/bin/apxs
no conflicting prior mod_perl version found - good.
Configuring Apache/2.2.15 mod_perl/2.0.4 Perl/v5.8.8
Checking if your kit is complete...
Looks good
Writing Makefile for ModPerl
Writing Makefile for ModPerl::XS
Writing Makefile for mod_perl2

注意:如果遇到“libgdbm.so 未找到。您可以将其符号链接到 /usr/lib/libgdbm.so.2.0.0” 消息,安装 gdbm-devel 包,如下所示。

# rpm -ivh gdbm-devel-1.8.0-26.2.1.i386.rpm

# rpm -qa | grep gdbm
gdbm-devel-1.8.0-26.2.1
gdbm-1.8.0-26.2.1

在这个阶段,mod_perl 仍未安装,您可以通过检查 Apache 2 模块目录的内容来验证。


# /usr/local/apache2/bin/apxs -q LIBEXECDIR
/usr/local/apache2/modules

# ls -l /usr/local/apache2/modules/
total 16512
-rw-r--r-- 1 root root     9083 May 18 09:59 httpd.exp
-rwxr-xr-x 1 root root 16871365 May 19 03:44 libphp5.so

3. 制作并安装 mod_perl

首先,做一个 make 测试,以确保一切看起来都很好。

# make test

t/special_blocks.t ... ok
All tests successful.
Files=20, Tests=84, 14 wallclock secs ( 0.17 usr  0.06 sys +  9.10 cusr  1.46 csys = 10.79 CPU)
Result: PASS

最后,进行 make install 以在 Apache2 上安装 mod_perl。

# make install

Installing /usr/share/man/man3/Apache::TestReport.3pm
Installing /usr/share/man/man3/ModPerl::Global.3pm
Installing /usr/bin/mp2bug
Appending installation info to /usr/lib/perl5/5.8.8/i386-linux-thread-multi/perllocal.pod
+--------------------------------------------------------------+
|                                                              |
| For details on getting started with mod_perl 2, see:         |
|                                                              |
|   http://perl.apache.org/docs/2.0/user/intro/start_fast.html |
|                                                              |
|                                                              |
| Found a bug?  File a bug report:                             |
|                                                              |
|   http://perl.apache.org/bugs/                               |
|                                                              |
+--------------------------------------------------------------+

4.修改httpd.conf并重启Apache

修改httpd.conf,加载mod_perl.so如下图

# grep perl /usr/local/apache2/conf/httpd.conf
LoadModule perl_module modules/mod_perl.so

重新启动 Apache。

# /usr/local/apache2/bin/apachectl restart

5. 验证 mod_perl 是否安装

如果一切顺利,您将在 apache 模块目录下看到 mod_perl.so。

# ls -l /usr/local/apache2/modules/
total 17752
-rw-r--r-- 1 root root     9083 May 18 09:59 httpd.exp
-rwxr-xr-x 1 root root 16871365 May 19 03:44 libphp5.so
-rwxr-xr-x 1 root root  1264743 Jun 21 10:01 mod_perl.so

Apache error_log 还将显示 mod_perl 已安装,如下所示。

# tail /usr/local/apache2/logs/error_log
[notice] Apache/2.2.15 (Unix) PHP/5.3.2 mod_perl/2.0.4 Perl/v5.8.8 configured
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。