Início > Instalação do Perl no IIS > CGI/Perl no IIS

CGI/Perl no IIS

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:

  1. Baixe o Interpretador Perl
  2. ActivePerl 5.8


  3. Instalando o ActivePerl
  4. 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.


  5. Configurando o IIS para ler .CGI
  6. 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.

  1. Cesar
    3 setembro, 2008 às 9:11 pm

    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!!

  2. Whitesnake
    3 setembro, 2008 às 10:17 pm

    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

  1. No trackbacks yet.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: