首页 > 网站 > Apache > 正文

CentOS 7.2配置Apache服务httpd(下)

2024-08-27 18:26:19
字体:
来源:转载
供稿:网友

一、Perl + mod_perl

安装mod_perl使Perl脚本速度快

[1] 安装mod_perl# 从EPEL安装[root@linuxprobe ~]# yum --enablerepo=epel -y install mod_perl[2] 配置PerlRun模式,总是将Perl解释器放在RAM上。 [root@linuxprobe ~]# vi /etc/httpd/conf.d/perl.conf# line 15: 取消注释 ( check codes and output warnings to logs )PerlSwitches -w# line 24: 取消注释PerlSwitches -T# line 30-36: 取消注释像下面一样Alias /perl /var/www/perl<Directory /var/www/perl> # the directory for mod_perl environment SetHandler perl-script # processes files as perl-scripts under this directory# AddHandler perl-script .cgi# set specific extension if do do not want to processes all files as CGI# PerlResponseHandler ModPerl::Registry PerlResponseHandler ModPerl::PerlRun# specify PerlRun mode PerlOptions +ParseHeaders Options +ExecCGI</Directory># line 43-49: 取消注释并添加如下信息<Location /perl-status> SetHandler perl-script PerlResponseHandler Apache2::Status Require ip 127.0.0.1 10.1.1.1/24# add access permission# Order deny,allow# Deny from all# Allow from .example.com</Location>[root@linuxprobe ~]# systemctl restart httpd[3] 创建测试脚本以确保设置不是ploblem。如果显示如下所示的结果,就可以。 [root@linuxprobe ~]# mkdir /var/www/perl[root@linuxprobe ~]# vi /var/www/perl/test-mod_perl.cgi#!/usr/bin/perluse strict;use warnings;print "Content-type: text/html/n/n";print "<html>/n<body>/n";print "<div style=/"width:100%; font-size:40px; font-weight:bold; text-align:center;/">";my $a = 0;&number();print "</div>/n</body>/n</html>";sub number { $a++; print "number /$a = $a";}[root@linuxprobe ~]# chmod 705 /var/www/perl/test-mod_perl.cgi #客户端浏览器访问:http://linuxprobe.org/perl/test-mod_perl.cgi

[4]  配置在RAM上具有代码缓存的注册表模式

[root@linuxprobe ~]# vi /etc/httpd/conf.d/perl.confAlias /perl /var/www/perl<Directory /var/www/perl> SetHandler perl-script PerlResponseHandler ModPerl::Registry # uncomment# PerlResponseHandler ModPerl::PerlRun # comment out PerlOptions +ParseHeaders Options +ExecCGI</Directory>[root@linuxprobe ~]# systemctl restart httpd

[5] 访问作为[4]节的示例的测试脚本,然后变量通过重新加载而增加,因为变量被高速缓存在RAM上。所以有必要编辑注册表模式的代码,这里浏览器没刷新一次,$a值加一。

[root@linuxprobe ~]# vi /var/www/perl/test-mod_perl.cgi#!/usr/bin/perluse strict;use warnings;print "Content-type: text/html/n/n";print "<html>/n<body>/n";print "<div style=/"width:100%; font-size:40px; font-weight:bold; text-align:center;/">";my $a = 0;&number($a);print "</div>/n</body>/n</html>";sub number { my($a) = @_; $a++; print "number /$a = $a";}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表