Pesquise...

Últimos Posts

Arquivo de Posts

2017 - 2016 - 2015 - 2014 - 2013 - 2012

Postagens Populares

Vem Comigo!

         
  •  
  •  
  •  
  •  
  • Tecnologia do Blogger.

    Boletim Informativo?

    * obrigatório

    Total de Acessos

    Saudações,

    Tem pouco mais de 24 que eu li um OFF Topic na lista de discussão do PHP, com a seguinte solicitação:

    Alguém poderia me orientar com algum link sobre como instalar o mod_perl no Apache?
    ...
    Plataforma: WINDOWS
    ...
    Será que alguém não poderia me dar apenas um "norte".

    ORIGEM: http://goo.gl/pFosVR

    Eu, na intensão de ajudar o colega criei este post.

    Windows com Apache e Mod_Perl


    Confesso que nunca acompanhei o Mod_Perl no Windows; não sei em que "pé" está o projeto!
    Sendo assim, peço aos leitores que fiquem atentos... observem as versões dos programas, localização dos arquivos de configuração, etc. Enfim, adapte este post ao seu ambiente de desenvolvimento.

    Este post foi feito com base em uma VM com Windows Server 2008 R2.

    Vamos lá?

    Baixe o Apache e o Perl para Windows...


    Apache para Windows:
    http://www.apache.org/dist/httpd/binaries/win32/httpd-2.2.25-win32-x86-no_ssl.msi

    Perl para Windows
    http://strawberryperl.com/download/5.12.3.0/strawberry-perl-5.12.3.0.msi

    Note que neste post eu estou usando o Strawberry Perl e não o Active Perl.

    Instale os MSIs da forma usual... AVANÇAR, AVANÇAR, FINALIZAR.

    Teste seu apache no endereço http://localhost/:



    Se você ver uma tela parecida com a imagem acima, o seu Apache foi instalado com sucesso.

    Acesse o Prompt de Comando e acenda à pasta de instalação do Perl com o comando cd:

    C:\> cd C:\strawberry

    Atualize as variáveis do seu ambiente executando o update_env.pl.bat precedido pelo binário do Perl:

    C:\strawberry> perl\bin\perl.exe update_env.pl.bat

    Você deve observar uma saída na tela parecida com:

    Adding C:\strawberry\c\bin to the system path.
    Adding C:\strawberry\perl\site\bin to the system path.
    Adding C:\strawberry\perl\bin to the system path.
    Adding TERM=dumb to the system environment.
    Updating environment variables added.
    Please reboot now in order to complete installation.

    Como solicitado na ultima linha da saída (Please reboot now...), reinicie o seu computador.

    Um vez reiniciado o sistema, vamos instalar o Mod_Perl.

    Tudo que precisamos para a ativação do modulo, versão x86, encontra-se em http://strawberryperl.com/package/kmx/mod_perl/5.12_x86/

    Inicie a instalação do Mod_Perl com o comando pip:

    C:\> pip http://strawberryperl.com/package/kmx/mod_perl/5.12_x86/mod_perl-2.0.4-MSWin32-x86-multi-thread-5.12.par

    Você deve observar uma saída na tela parecida com:

    Files found in blib\arch: installing files in blib\lib into architecture dependent library tree
    Installing C:\strawberry\perl\site\lib\auto\Apache2\typemap
    ...
    ...
    Installing C:\strawberry\perl\bin\mp2bug.bat
    Aproveite e instale o suporte Apreq2 com o comando:

    C:\> pip http://strawberryperl.com/package/kmx/mod_perl/5.12_x86/libapreq2-2.12-MSWin32-x86-multi-thread-5.12.par

    Você deve observar uma saída na tela parecida com:

    Files found in blib\arch: installing files in blib\lib into architecture dependent library tree
    Installing C:\strawberry\perl\site\lib\auto\APR\Request\Request.bs
    ...
    ...
    Installing C:\strawberry\perl\site\lib\APR\Request\Parser.pod

    Agora, manualmente, baixe a libapreq2.dll para a pasta do executável do Perl:

    http://strawberryperl.com/package/kmx/mod_perl/5.12_x86/libapreq2.dll => C:\strawberry\perl\bin


    Em seguida, também manualmente, baixe o mod_perl.so e mod_apreq2.so para a pasta de módulos do apache:

    http://strawberryperl.com/package/kmx/mod_perl/5.12_x86/mod_apreq2.so => C:\Program Files (x86)\Apache Software Foundation\Apache2.2\modules
    http://strawberryperl.com/package/kmx/mod_perl/5.12_x86/mod_perl.so => C:\Program Files (x86)\Apache Software Foundation\Apache2.2\modules

    Calma, estamos quase lá! eehehe

    Abra o arquivo de configuração do apache para edição:


    No final do arquivo httpd.conf, adicione as linhas:

    # MOD_PERL INICIO
    PerlSwitches -T
    
    <Files ~ "\.pl$">
        SetHandler perl-script
        PerlResponseHandler ModPerl::Registry
        PerlOptions +ParseHeaders
        Options +ExecCGI
        PerlSendHeader On
        Order allow,deny
        Allow from all
    </Files>
    
    LoadFile "C:\strawberry\perl\bin\perl512.dll"
    LoadModule perl_module modules/mod_perl.so
    LoadModule apreq_module modules/mod_apreq2.so
    # MOD_PERL FIM
    

    Reinicie o Apache...

    Para finalizar, vamos testar o Mod_Perl.
    Na pasta raiz do seu Apache crie um arquivo chamado teste.pl com o conteudo:

    #!C:\strawberry\perl\bin\perl.exe
    
    print "Content-type: text/plain; charset=iso-8859-1\n\n";
    
    foreach $var (sort(keys(%ENV))) {
        $val = $ENV{$var};
        $val =~ s|\n|\\n|g;
        $val =~ s|"|\\"|g;
        print "${var}=\"${val}\"\n";
    }
    


    aqui no meu ambiente ficou assim


    Salve o arquivo e teste o Mod_Perl no navegador acessando:

    http://localhost/teste.pl

    Você deve obter um resultado como o da imagem abaixo:


    Bem, é isto.

    Espero que eu possa, de alguma forma, ter ajudado.

    Há, aproveitem e leiam o post sobre o Apache com Mod_Perl sendo configurado no Linux! ^_^


    Paz a todos!