Mod cgi » History » Revision 7
Revision 6 (hoffie, 2007-04-20 13:57) → Revision 7/32 (moo, 2007-07-07 15:28)
[[TracNav(DocsToc))]
{{{
#!rst
===
CGI
===
---------------
Module: mod_cgi
---------------
.. meta::
:keywords: lighttpd, cgi
.. contents:: Table of Contents
Description
===========
CGI programs allow you to enhance the functionality of the server in a very
straight and simple way..
Options
=======
cgi.assign
file-extensions that are handled by a CGI program
e.g.: ::
cgi.assign = ( ".pl" => "/usr/bin/perl",
".cgi" => "/usr/bin/perl" )
For PHP don't forget to set cgi.fix_pathinfo = 1 in the php.ini.
To get the old cgi-bin behavior of apache: ::
#Note: make sure that mod_alias is loaded if you use this:
alias.url += ( "/cgi-bin" => server_root + "/cgi-bin" )
$HTTP["url"] =~ "^/cgi-bin" {
cgi.assign = ( "" => "" )
}
cgi.execute-all
In 1.5.0 and later you can use: ::
$PHYSICAL["existing-path"] =~ "^/var/www/myvhost/cgi-bin/" {
cgi.execute-all = "enable"
}
which does the same thing as cgi.assign = ("" => "") but is more obvious to use.
Examples
========
To setup an executable which can run on its own (e.g. binaries, scripts
with a shebang line) you just don't specify a handler for the extension: ::
cgi.assign = ( ".sh" => "" )
If the file has no extension keep in mind that lighttpd matches not the
extension itself but the right part of the URL: ::
cgi.assign = ( "/testfile" => "" )
}}}