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
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.
Ah, aproveitem e leiam o post sobre o Apache com Mod_Perl sendo configurado no Linux! ^_^
Paz a todos!
2 comentários:
Excelente, parabéns Francisco!
Obrigado! ^_^