Para você que utiliza o servidor IIS e deseja executar arquivos CGI PERL, atente-se a este tutorial.
Primeiramente você deve ter instalado o interpretador Perl em seu servidor. Para isso:
- Baixe o Interpretador Perl
- Instalando o ActivePerl
- Configurando o IIS para ler .CGI
O processo de instalação do ActivePerl não é complicado. Lembre-se de instalar os PPMs 2 e 3.
Selecione todas as opções da sessão ‘Choose optional setup actions‘.
Avance até o fim do processo de instalação.
Até então, o IIS já roda arquivos com extensão .PL
Agora, para adicionar a extensão .CGI faça o seguinte:
Pelo XP, clique com o botão direito em Meu computador > Gerenciar > Serviços e aplicativos > Internet Information Services > Sites da Web > Clique com o botão direito em Site da Web Padrão e vá em Propriedades.
No guia Diretório Base, vá em Configuração > Mapeamentos > Adicionar
Adicione os seguintes dados:
Executável: C:perlbinperl.exe “%s” %s
Extensão: .cgi
Verbos > Limitar a: GET, HEAD, POST
Pronto! Basta clicar em OK. Agora seu IIS está configurado para rodar tanto ASP como CGI.
Obs.: Para fazer o IIS interpretar arquivos ‘.pl’, basta repetir a etapa nº 3, alterando apenas a extensão para “.pl”
Você já pode adicionar seus arquivos em C:Inetpubwwwroot e rodá-los como no Apache.
Obs.: O IIS deverá ser instalado através do CD do Windows.
Arquivado em: Instalação do Perl no IIS | Etiquetado: activeperl, apache, cgi, head, iis, inetpub, microsoft, post, wwwroot
Oi,
Estou tentando executar scripts muito simples, que executem comandos do sistema operacional, mas não funcionam de jeito nenhum. Por exemplo, um script simples abaixo ele nao carrega a variável $saca:
#!c:\perl\bin
use warnings;
use strict;
use CGI qw ( :standard);
print header(),
start_html(”TESTE”),
h1(’Teste’);
print “Sera que vai dar certo????????\n”;
my $saca =`hostname`;
$saca = exec(”hostname”);
print $saca, “\n”;
print end_html();
O que fazer para que seja executado um comando de sistema operacional dentro de um script cgi-perl no IIS??
Obrigado!!
Olá Cesar!
O IIS por padrão bloqueia a execução direta de comandos.
Você pode tentar alterar isto em :
Painel de Controle > Ferramentas Administrativas > IIS
Clique com botão direito em ‘Site da Web Padrão’ > Propriedades
Em Diretório base, altere permissões de execução para Scripts e Executáveis
Se não funcionou, acho bom você ler este artigo que é bem específico:
http://www.iis-aid.com/articles/trouble_shooting/warning_exec_function_exec_unable_to_fork
Abraços