Below are a bunch of hoops I had to jump through to get
Dradis installed under Apache. I was using Ubuntu 10.04 server but no doubt at least some of them will be relevant for other platforms.
'Missing' passenger-install-apache2-moduleThe passenger-install-apache2-module executable wasn't in my default path. I installed it via gem and it ended up at:
/var/lib/gems/1.8/bin/passenger-install-apache2-module
Configuring Passenger Apache moduleOnce you've run the passenger-install-apache2-module executable you'll need to configure and enable it. To do this create two files in the /etc/apache2/mods-available directory:
/etc/apache2/mods-available/passenger.load
LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.15/ext/apache2/mod_passenger.so
/etc/apache2/mods-available/passenger.conf
<IfModule mod_passenger.c>
PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.15
PassengerRuby /usr/bin/ruby1.8
</IfModule>
And enable the module by running the following commands
a2enmof passenger && apache2ctl restart
This will fix any 'Premature end of script headers: dispatch.cgi' errors you may be getting.
Correcting file permissionsYou'll need to make sure Apache has permissions to view and run the Dradis code base. By default Apache will run as the www-data user on Ubuntu. So if you have installed Dradis under the /data/dradis-2.5 directory you'll need to correct the ownership permissions with:
chown -R www-data:www-data /data/dradis-2.5/
For platforms other than Ubuntu (or on customised installs) you'll be able to find the user that Apache processes run as via the User and Group configuration statements (see /etc/apache2/apache2.conf and /etc/apache2/envars).