{{tag>netadmin sysadmin web apache apache2 cgi}}
====== Configurer Apache2 pour exécuter des scripts CGI ======
:TODO_DOCUPDATE:
===== Environnement =====
Cette note configure un serveur Apache2 sur une Debian 12 (bookworm).
# version du système
lsb_release -a
# version apache
apache2 -v
===== Activer le module cgi =====
Le support de l'exécution de scripts CGI ((Common Internet Gateway)) par Apache2 passe par le module **cgid**. Pour activer le module :
a2enmod cgi
systemctl reload apache2
===== Répertoire des scripts =====
On crée un répertoire dédié aux scripts CGI. Pour l'exemple on copie un script CGI fournit par la documentation de squidguard
===== Configurer l'hôte virtuel =====
Créer un fichier de configuration pour l’hôte virtuel Apache dans ''/etc/apache2/sites-available/''
ServerName vhost.fqdn
ServerAdmin webmaster@localhost
DocumentRoot "/var/www/html/"
ScriptAlias "/cgi-bin/" "/srv/proxy/cgi/"
AllowOverride None
Options +ExecCGI
AddHandler cgi-script .cgi
Require all granted
ErrorLog ${APACHE_LOG_DIR}/proxy-error.log
CustomLog ${APACHE_LOG_DIR}/proxy-access.log combined
===== Tester l’exécution du script =====
wget -O - "http://vhost.fqdn/cgi-bin/squidGuard-simple.cgi"
===== Références =====
* https://linuxconfig.org/simple-cgi-and-apache-examples-on-ubuntu-linux
*