Depois de ter ativado o módulo cgi com
sudo a2enmod cgi
Você pode ir e modificar o arquivo
/etc/apache2/sites-enabled/000-default
e encontre a seção que lê isso
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin/">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
isto diz ao apache que quando você encontra o host url, por exemplo
localhost/cgi-bin/
que deve verificar o diretório / usr / lib / cgi-bin para o arquivo que você solicitou e se ele acha que o executa. agora você pode fazê-lo executar a partir de qualquer diretório, adicionando o diretório dentro da diretiva Directory, por exemplo, se você quiser que ele seja / var / www (onde estão os arquivos cgi) você pode ter
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/var/www/">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
com isso, um pedido para
localhost/script.cgi
deve funcionar perfeitamente. Além disso, certifique-se de ter o
libapache2-mod-perl
pacote instalado.