Como ativar os scripts CGI no Apache
Os scripts CGI são uma solução prática para aliviar a carga do servidor da Web Apache. As configurações necessárias do Apache podem ser definidas rapidamente e o processo de concessão de permissões para o diretório e os arquivos CGI é simples.
Quais são os requisitos para scripts CGI no Apache?
Para usar o Common Gateway Interface (CGI) para enviar scripts ao seu servidor da Web Apache, você precisa da seguinte configuração:
- um servidor em nuvem ou servidor virtual privado (VPS)
- uma distribuição de servidor Linux, como o CentOS 8 ou o Ubuntu 22.04
- um servidor da Web Apache que esteja instalado e em execução
Uma instalação padrão do Linux vem com o Apache já instalado. Se o seu servidor foi criado com a opção de instalação mínima, você precisará instalar e configurar o Apache antes de prosseguir. Saiba como instalar e configurar o Apache para WordPress em nosso artigo relacionado.
Como habilitar scripts CGI nas configurações do Apache
Duas coisas precisam ser configuradas para executar scripts CGI em um servidor Linux com Apache:
- O Apache precisa ser configurado para que o servidor da Web possa executar scripts CGI.
- O script precisa ser carregado no local correto e receber as permissões corretas.
Configurações do Apache para scripts CGI no CentOS
Abra o arquivo de configuração do Apache httpd.conf
para edição:
Encontre a seção que diz:
Substitua a linha Options None
pelas duas linhas a seguir:
A primeira linha diz ao Apache para executar arquivos CGI que são carregados no diretório /var/www/cgi-bin directory
. A segunda linha informa ao Apache que qualquer arquivo que termine em .cgi, .pl (Perl script) ou .py (Python script) é considerado um script CGI.
A seção agora é a seguinte:
Salve e saia do arquivo. Agora reinicie o Apache para que as alterações tenham efeito:
Configurações do Apache para scripts CGI no Ubuntu
Nos sistemas Ubuntu, como o Ubuntu 22.04, o Apache é configurado por padrão para permitir a execução de scripts CGI no diretório designado /usr/lib/cgi-bin
. Você não precisa alterar nenhuma configuração do Apache. Entretanto, o módulo CGI do Apache deve ser ativado antes que os scripts CGI possam ser executados. Para fazer isso, você precisará criar um link simbólico (:
Em seguida, reinicie o Apache para que as alterações tenham efeito:
Como fazer upload do script CGI e definir permissões
Para verificar a funcionalidade do script CGI em seu servidor Apache, recomendamos começar com um script de teste. Crie o arquivo test.cgi
no cgi-bin designado do servidor e abra o script de teste para edição:
- CentOS:
sudo nano /var/www/cgi-bin/test.cgi
- Ubuntu:
sudo nano /usr/lib/cgi-bin/test.cgi
Adicione o seguinte conteúdo a esse arquivo:
Salve e saia do arquivo. Na próxima etapa, dê ao arquivo as permissões de execução necessárias:
- CentOS:
sudo chmod 755 /var/www/cgi-bin/test.cgi
- Ubuntu:
sudo chmod 755 /usr/lib/cgi-bin/test.cgi
Ao usar os parâmetros chmod 755
, o script pode ser lido, editado e executado pelo proprietário. Para o grupo e outros usuários, há acesso de leitura e a possibilidade de executar o script.
Visualize o script em um navegador, usando o nome de domínio ou o endereço IP:
Se a configuração for bem-sucedida, a mensagem “Hello world!” será exibida.
Como solucionar erros de script CGI
404 error: Um erro 404 significa que o URL não pode ser encontrado. Verifique se o script foi adicionado ao diretório correto.
- CentOS: O diretório CGI padrão é
var/www/cgi-bin/
- Ubuntu: O diretório CGI padrão é
/usr/lib/cgi-bin
Erro 500 do servidor: Quando o erro 500 aparece em conexão com scripts CGI no Apache, isso geralmente se deve ao fato de o script não ter as permissões corretas. Verifique se o script tem permissões de execução (chmod 755) .