This post follows the last one about installing or migrating redmine and mysql. Picking up from the point where redmine was working through WEBrick...
A couple of extra ruby gems are required to get apache to serve redmine to the world. Passenger does most of the hard work, and when it installs it provides it's own config instructions. Neato!
sudo gem install passenger sudo passenger-install-apache2-module
The last command is really cool, it does lots of work compiling the apache module. I guess it's something from the rails community. The instructions tell us to add some lines to the apache configuration file. I'm putting them in /etc/apache2/other/passenger.conf. After I'm done, the passenger.conf file looks like this:
# settings from passenger-install-apache2-module LoadModule passenger_module/Library/Ruby/Gems/1.8/gems/passenger-3.0.11/ext/apache2/mod_passenger.so PassengerRoot /Library/Ruby/Gems/1.8/gems/passenger-3.0.11 PassengerRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby # additional settings PassengerUserSwitching on PassengerUser _www PassengerGroup _www
Set user:group on
sudo chown _www:_www /etc/apache2/conf/extra/passenger.conf
And get apache to load the passenger.conf file by adding the following line to httpd.conf
Redmine runs on apache using a virtual host. Include the httpd-vhosts.conf file by uncommenting the relevant line in httpd.conf:
# Include /private/etc/apache2/extra/httpd-vhosts.conf
Then edit the httpd-vhosts.conf file to get things working. Comment out the example configs (anything referring to *dummy-host*), and add the following config sections:
<VirtualHost *:80> DocumentRoot "/Library/WebServer/Documents" ServerName localhost </VirtualHost> <VirtualHost *:80> ServerName your.ip.number.here ServerAlias redmine.local ServerAlias your_server_name.local <Directory /Library/WebServer/redmine> Order allow,deny Deny from all </Directory> <Directory /Library/WebServer/redmine/public> AllowOverride All Options Indexes FollowSymLinks -MultiViews Order allow,deny Allow from all </Directory> RailsBaseURI /redmine/public RailsEnv production </VirtualHost>
Restart apache in the terminal with
sudo apachectl graceful, or in System Preferences->Sharing (toggle Web Sharing off and on).
Go to http://your.ip.number/redmine/public in a web browser to check if all is working. The first time you load redmine, the server needs to start ruby so it takes a moment, but the response should be quicker after that.
If things go wrong it might be helpful to open the Console to look at relevant logs.