Common Gateway Interface (CGI) és un mètode estandard que permet als servidors web delegar la generació de contingut web a fitxers executables. Aquests fitxers executables es coneixen com a CGI scripts o simplement CGIs i solen escriure's en llenguatges d'scripting.
A Ubuntu Apache està configurat per tal de que les URLs de tipus
http://ELNOSTRESERVIDOR/cgi-bin/EXECUTABLECGI
Executin scripts CGI de la carpeta:
/usr/lib/cgi-bin/
Això és així graciès a la configuració del fitxer:
$ cat /etc/apache2/sites-available/default <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> 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> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>