当前位置 主页 > 服务器问题 > Linux/apache问题 >

    CentOS 7.2配置Apache服务httpd(下)

    栏目:Linux/apache问题 时间:2019-03-14 13:30

    这篇文章主要为大家详细介绍了CentOS 7.2配置Apache服务 httpd上篇,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    一、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";}