Using the mod_fcgid RPM Package
===============================
This mod_fcgid package includes a configuration file
/etc/httpd/conf.d/fcgid.conf that ensures that the module is loaded and
added as the handler for .fcg, .fcgi, and .fpl applications.
Example: setting up moin with mod_fcgid
=======================================
Setting up moin with mod_fcgid is very similar to setting it up as a regular
CGI application.
* Create a directory for your wiki instance:
DESTDIR=/var/www/mywiki
mkdir -p $DESTDIR/cgi-bin
* Copy in the wiki template data and the application itself:
cp -a /usr/share/moin/{data,underlay} $DESTDIR
cp -a /usr/share/moin/server/moin.fcg $DESTDIR/cgi-bin
cp -a /usr/share/moin/config/wikiconfig.py $DESTDIR/cgi-bin
* Fix the directory ownership
chown -R apache:apache $DESTDIR/{data,underlay}
* Edit $DESTDIR/cgi-bin/wikiconfig.py to suit your needs
* Create a httpd configuration file for the wiki, e.g.
/etc/httpd/conf.d/mywiki.conf
# Wiki application data common to all wiki instances
Alias /moin_static185 "/usr/share/moin/htdocs/"
<Directory "/usr/share/moin/htdocs/">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 year"
</IfModule>
</Directory>
# Wiki instance with mod_fcgid
<IfModule mod_fcgid.c>
ScriptAlias /mywiki "/var/www/mywiki/cgi-bin/moin.fcg"
<Directory "/var/www/mywiki/cgi-bin/">
Options Indexes FollowSymLinks ExecCGI
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</IfModule>
* Restart the web server to load the new configuration:
service httpd restart
That should do it!
Ruby on Rails with mod_fcgid
============================
One of the differences between mod_fastcgi and mod_fcgid is that the former
sets the SCRIPT_NAME environment variable whilst the latter does not, and it's
reported (http://bugzilla.redhat.com/476658) that Ruby on Rails expects this
environment variable to be present. A workaround for this is to add:
ActionController::AbstractRequest.relative_url_root = ""
to the Rails::Initializer.run segment of config/environment.rb