文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>windows2003+Apache2.2.4 +mod_perl2.0.3 +Perl5.8.8

windows2003+Apache2.2.4 +mod_perl2.0.3 +Perl5.8.8

时间:2007-06-15  来源:easyworld

1.首先下载相应的apache和perl

apache http://httpd.apache.org/

perl http://www.perl.org

安装好,比如

apache 安装在 e:/usr/apache2

perl 安装在 e:/usr/perl
  (为什么是usr,我觉得这样比较符合linux下的习惯)

ActivePerl安装完成后会自动为用户设置好环境变量的PATH项,如果没有perl的路径,自己添加.
      2.接下来是安装mod_perl,我采用的包安装法,在命令行下输入    

ppm install http://theoryx5.uwinnipeg.ca/ppms/mod_perl.ppd

 

3.建立extra.pl文件保存到e:/usr/apache2/conf 下

内容如下:

 

use ModPerl::Util ();
use Apache2::RequestRec ();
use Apache2::RequestIO ();
use Apache2::RequestUtil ();
use Apache2::ServerRec ();
use Apache2::ServerUtil ();
use Apache2::Connection ();
use Apache2::Log ();
use Apache2::Const -compile => ':common';
use APR::Const -compile => ':common';
use APR::Table ();
use Apache2::compat ();
use ModPerl::Registry ();
use CGI ();
1;

 

4.修改http.conf,增加以下内容

LoadFile "e:/usr/Perl/bin/perl58.dll"
LoadModule perl_module modules/mod_perl.so
PerlRequire "e:/usr/Apache2/conf/extra.pl"

AddHandler perl-script .pl .cgi

Alias /perl/ "e:/usr/apache2/htdocs/perl/"  #这是用户要保存脚本的目录

PerlModule ModPerl::Registry

<Location /perl>

    SetHandler perl-script

    PerlHandler ModPerl::Registry

    Options +ExecCGI

    allow from all

    PerlSendHeader On

</Location>

 

5.重启apahce2

net stop apache2
net start apahce2

6.测试

在脚本目录下建立test.pl 内容如下

## printenv -- demo CGI program which just prints its environment

##

use strict;
print "Content-type: text/html\n\n";
print "
Environment variables

      ";
      foreach (sort keys %ENV) {
      my $val = $ENV{$_};
      $val =~ s|\n|\\n|g;
      $val =~ s|"|\\"|g;
    * print "$_ = \"${val}\"
      \n";
      }
      #sleep(10);

      print "

";

 

通过http://localhost/perl/test.pl如果能够正常输出

 

Environment variables

    * COMSPEC = "C:\WINDOWS\system32\cmd.exe"
    * DOCUMENT_ROOT = "E:/usr/Apache2/htdocs"
    * GATEWAY_INTERFACE = "CGI/1.1"
    * HTTP_ACCEPT = "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"
    * HTTP_ACCEPT_CHARSET = "gb2312,utf-8;q=0.7,*;q=0.7"
    * HTTP_ACCEPT_ENCODING = "gzip,deflate"
    * HTTP_ACCEPT_LANGUAGE = "zh-cn,zh;q=0.5"
    * HTTP_CONNECTION = "keep-alive"
    * HTTP_HOST = "localhost"
    * HTTP_KEEP_ALIVE = "300"
    * HTTP_USER_AGENT = "Mozilla/5.0 (Windows; U; Windows NT 5.2; zh-CN; rv:1.8.1.5pre) Gecko/20070603 BonEcho/2.0.0.5pre"
    * MOD_PERL = "mod_perl/2.0.3"
    * MOD_PERL_API_VERSION = "2"
    * PATH = "E:\usr\Perl\site\bin;E:\usr\Perl\bin;e:\usr\perl\bin;e:\usr\perl\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;e:\GTK\2.0\bin;C:\data\wre\prereqs\Perl\bin\;C:\data\wre\prereqs\mysql\bin;c:\data\wre\prereqs\apache\bin;c:\data\wre\prereqs\utils\bin;C:\data\wre\prereqs\apache\modules;C:\data\wre\prereqs\Perl\bin\;C:\data\wre\prereqs\mysql\bin;c:\data\wre\prereqs\apache\bin;c:\data\wre\prereqs\utils\bin;C:\data\wre\prereqs\apache\modules"
    * PATHEXT = ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH"
    * QUERY_STRING = ""
    * REMOTE_ADDR = "127.0.0.1"
    * REMOTE_PORT = "2257"
    * REQUEST_METHOD = "GET"
    * REQUEST_URI = "/perl/test"
    * SCRIPT_FILENAME = "E:/usr/Apache2/htdocs/perl/test"
    * SCRIPT_NAME = "/perl/test"
    * SERVER_ADDR = "127.0.0.1"
    * SERVER_ADMIN = "admin@domain"
    * SERVER_NAME = "localhost"
    * SERVER_PORT = "80"
    * SERVER_PROTOCOL = "HTTP/1.1"
    * SERVER_SIGNATURE = ""
    * SERVER_SOFTWARE = "Apache/2.2.4 (Win32) mod_perl/2.0.3 Perl/v5.8.8"
    * SystemRoot = "C:\WINDOWS"
    * TEMP = "C:\WINDOWS\TEMP"
    * TZ = "America/Chicago"
    * WINDIR = "C:\WINDOWS"

 

则说明配置成功

7.自己编写第一个脚本,当然是hello.pl

 

print "Content-type: text/html\n\n";
print "hello world";

 


输出

hello world

 


 

  • 以上参照

http://perl.apache.org/docs/2.0/os/win32/index.html
及网上其他网友的经验和本人试验集合而成

相关阅读 更多 +
排行榜 更多 +
枪战特训2

枪战特训2

飞行射击 下载
方块枪战战场安卓版

方块枪战战场安卓版

飞行射击 下载
战斗火力射击安卓版

战斗火力射击安卓版

飞行射击 下载