Project

General

Profile

Actions

HowToSetupTrac » History » Revision 11

« Previous | Revision 11/18 (diff) | Next »
zachera, 2008-10-18 23:26
404 on the TracInstall location.


How to setup trac with Lighttpd

Trac is an enhanced wiki and issue tracking system for software development projects.

lighttpd.net is using it as its bug-tracking system and web-frontend for subversion.

Common setup using FastCGI


$HTTP["host"] == "trac.example.com" {
    server.document-root = "/www/htdocs/sites/trac.example.com" 
    alias.url            = (
        "/trac_prefix/chrome/common/" => "/usr/share/trac/htdocs/",
    )

    # rewrite for multiple svn project
    url.rewrite-final    = (
        "^/trac_prefix/[^/]+/chrome/common/(.*)" => "/trac_prefix/chrome/common/$1",
    )

    $HTTP["url"] =~ "^/trac_prefix/chrome/" {
        # no fastcgi
    } # end of $HTTP["url"] =~ "^/trac_prefix/chrome/" 
    else $HTTP["url"] =~ "^/trac_prefix" {
        fastcgi.server    = (
            "/" => (
                (
                    "bin-path"        => "/usr/share/webapps/trac/0.9.3/hostroot/cgi-bin/trac.fcgi",
                    "socket"          => "/tmp/trac.sock",
                    "check-local"     => "disable",
                    "disable-time"    => 1,
                    "min-procs"       => 1,
                    "max-procs"       => 1,
                    "bin-environment" => (
                        "TRAC_ENV_PARENT_DIR" => "/var/lib/trac/",
                    ),
                ),
            ),
        )
    } # end of $HTTP["url"] =~ "^/trac_prefix" 
} # end of $HTTP["host"] == "trac.example.com" 

Change "/trac_prefix" (neither "/trac_prefix/" nor "trac_prefix/", nor "trac_prefix") to anything else or even remove it if you want.

'''For top level setup:''' In order to have Trac running at the top level of a virtual host, you also need an alias.url entry for `"" => "/path/to/trac.fcgi"`

If you only want one svn project, then replace "TRAC_ENV_PARENT_DIR" with "TRAC_ENV" and change "/var/lib/trac" to the correct subdirectory.

Common setup using CGI

Take a look at the updated Trac setup documentation

Separated setup

The webserver at lighttpd.net is living in a chroot which separates the webserver-root from the rest of the system and the subversion repositories.

As trac requires physical access it couldn't be installed in the well documented way.

trac provides a seperated tracd which is started locally at port 9090:


#!ShellExample
$ tracd -b 127.0.0.1 -p 9090 /path/to/trac/lighttpd/

To forward all requests from the webserver to trac the proxy module is used:


$HTTP["host"] == "trac.lighttpd.net" {
  # forward all requests at trac.lighttpd.net to the tracd
  proxy.server = ("" => ( "trac" => ( "host" => "127.0.0.1", "port" => 9090 )))
}

Updated by zachera over 15 years ago · 11 revisions