ScriptAlias /cgi-bin/ "/usr/local/httpd/cgi-bin/" <Directory "/usr/local/httpd/cgi-bin"> AllowOverride None Options None Options FollowSymLinks Order allow,deny Allow from all </Directory>
http://localhost/cgi-bin/test.cgi
Le script /usr/local/httpd/cgi-bin/test.cgi doit être exécutable pas tous, et le répertoire /usr/local/httpd/cgi-bin doit être accessible par tous. Voici le fichier /usr/local/httpd/cgi-bin/test.cgi :
#!/bin/sh # disable filename globbing set -f echo Content-type: text/plain echo echo CGI/1.0 test script report: echo echo argc is $#. argv is "$*". echo echo SERVER_SOFTWARE = $SERVER_SOFTWARE echo SERVER_NAME = $SERVER_NAME echo GATEWAY_INTERFACE = $GATEWAY_INTERFACE echo SERVER_PROTOCOL = $SERVER_PROTOCOL echo SERVER_PORT = $SERVER_PORT echo REQUEST_METHOD = $REQUEST_METHOD echo HTTP_ACCEPT = "$HTTP_ACCEPT" echo PATH_INFO = "$PATH_INFO" echo PATH_TRANSLATED = "$PATH_TRANSLATED" echo SCRIPT_NAME = "$SCRIPT_NAME" echo QUERY_STRING = "$QUERY_STRING" echo REMOTE_HOST = $REMOTE_HOST echo REMOTE_ADDR = $REMOTE_ADDR echo REMOTE_USER = $REMOTE_USER echo AUTH_TYPE = $AUTH_TYPE echo CONTENT_TYPE = $CONTENT_TYPE echo CONTENT_LENGTH = $CONTENT_LENGTH
et voici la page affichée par le navigateur :
CGI/1.0 test script report: argc is 0. argv is . SERVER_SOFTWARE = Apache/1.3.12 (Unix) (SuSE/Linux) SERVER_NAME = tarsier GATEWAY_INTERFACE = CGI/1.1 SERVER_PROTOCOL = HTTP/1.0 SERVER_PORT = 80 REQUEST_METHOD = GET HTTP_ACCEPT = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */* PATH_INFO = PATH_TRANSLATED = SCRIPT_NAME = /cgi-bin/test.cgi QUERY_STRING = REMOTE_HOST = REMOTE_ADDR = 127.0.0.1 REMOTE_USER = AUTH_TYPE = CONTENT_TYPE = CONTENT_LENGTH =