Apache: Direttiva azione Non attivando lo script CGI
Domanda
Ho giocato con Apache CGI e sto cercando di eseguire uno script CGI quando viene richiesta un'estensione specifica del file.
Ho il seguente nel mio Apache2.Conf:
AddHandler handle .html
Action handle /use/lib/cgi-bin/test.pl virtual
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>
.
Quindi quando provo a richiedere una pagina HTML, ciao.html, dalla mia directory di documentroot ho un messaggio di errore che dice che non è riuscito a trovare un percorso che combina la posizione del mio script CGI e il file richiesto:
.non trovato
L'URL richiesto /USR/lib/cgi-bin/test.pl/Hello.html non è stato trovato questo server.Server apache / 2.2.22 (Ubuntu) presso la porta Ryan-VirtualBox 80Not trovato
Perché il mio script CGI non sarebbe stato eseguito, e perché questo percorso combinato è stato presentato come non trovato?
Grazie in anticipo.
Soluzione
Secondo Documentazione Mod_Actions , il CGI-Lo script è il percorso dell'URL in una risorsa. Quindi immagino che la tua direttiva azione dovrebbe essere riscritta:
Action handle /cgi-bin/test.pl virtual
.