Project

General

Profile

Actions

Mod cgi » History » Revision 11

« Previous | Revision 11/31 (diff) | Next »
Anonymous, 2008-05-03 05:47
grammar s/straight/straight-forward/ & al


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-forward 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" => "" )

Updated by Anonymous almost 16 years ago · 11 revisions