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 /etc/apache2/conf/extra/passenger.conf
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
Include /private/etc/apache2/other/*.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.
No comments:
Post a Comment