{{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 *