rApache on Debian 6.0 squeeze or Ubuntu 10.04 Lucid Lynx

This is how I installed and configured rApache on Debian 6.0 (squeeze). It should work on Ubuntu 10.04 Lucid Lynx also.

Install R and Apache MPM prefork (I assume that Apache 2 is installed already):

> sudo aptitude install r-base r-base-dev apache2-mpm-prefork apache2-prefork-dev

Download and build rApache from source:

> cd /usr/local/src
> sudo wget http://biostat.mc.vanderbilt.edu/rapache/rapache-1.1.17.tar.gz
> sudo tar xzf rapache-1.1.17.tar.gz
> cd rapache-1.1.17
> sudo ./configure
> sudo make
> sudo make install

Create file /etc/apache2/mods-available/R.load with content:

LoadModule R_module /usr/lib/apache2/modules/mod_R.so

Enable mod_R:

> sudo a2enmod R

Create folder /var/www/r-scripts .

Add the following to /etc/apache2/sites-available/default inside <VirtualHost *:80>:

<VirtualHost *:80>
	...
	<Directory /var/www/r-scripts/>
		SetHandler r-script
		RHandler sys.source
	</Directory>
	...
</Directory>

Created file /var/www/r-scripts/hello.R with the following content:

setContentType(type='text/plain')
cat('Hello')
DONE

Restart Apache:

> sudo /etc/init.d/apache2 restart

Verify that it works:

> curl -s http://localhost/r-scripts/hello.R
Hello

Done.

References: