Install Request Tracker 4 from source with lighttpd and postfix on Ubuntu 14.04

Request Tracker is a tried-and-tested ticketing system, written in Perl. The manual installation documentation is pretty clear but not tailored to any particular distribution or configuration and I still had to do a bit of digging around to complete the installation, so I am posting my notes in case they help others.

Unpack the latest release of the application to /usr/local/src:

wget https://download.bestpractical.com/pub/rt/release/rt.tar.gz
gunzip rt.tar.gz
tar -xvf rt.tar

After building you have to install the extra dependencies. Unfortunately make fixdeps didn’t do a great job. Here’s all the extra packages I installed:

apt-get install build-essential mysql-server apache2 postfix mailutils openssl libyaml libyaml-appconfig-perl openssl-dev libexpat1-dev libxml-rss-perl libdate-extract-perl libssl-dev libcrypt-ssleay-perl

For my installation I’m also using Postfix as MTA to Sendgrid.

SMTP for Sendgrid on Postfix can be configured as per:
https://www.linode.com/docs/email/postfix/postfix-smtp-debian7#settings-for-sendgrid

In /etc/postfix/main.cf add:

relayhost = [smtp.sendgrid.net]:587

In /etc/postfix/sasl_passwd:

[smtp.sendgrid.net]:587 USERNAME:PASSWORD

Then, generate the password hash as per the link above.

Here’s the configuration for /opt/rt4/etc/RT_SiteConfig.pm:

Set( $rtname, 'MyOrg');

Set( $WebDomain, 'rt.myOrg.com');

Set( $WebBaseURL, 'http://rt.myOrg.com');

Set( $Organization, 'myOrg.com');

Set( $Timezone, ‘Australia/Perth’);

Set( $WebDefaultStylesheet, ‘rudder/aileron/web2/ballard’);

I chose to use Lighttpd as my webserver. After installing it, I placed the following in /etc/lighttpd/lighttpd.conf:

server.document-root = "/opt/rt4/share/html/"

    server.modules += ( "mod_fastcgi" )
    $HTTP["host"] =~ "^rt.myOrg.com" {
        fastcgi.server = (
            "/" => (
                "rt" => (
                    "socket"      => "/opt/rt4/var/socket",
                    "bin-path"    => "/opt/rt4/sbin/rt-server.fcgi",
                    "check-local" => "disable",
                    "fix-root-scriptname" => "enable",
                )
            )
        )
    }

Then (as I was installing on Ubuntu) I removed apache2 from startup:

sudo update-rc.d -f apache2 remove

Leave a Reply

Your email address will not be published. Required fields are marked *