Steps ===== 1. Set up mongrel_cluster follow: http://mongrel.rubyforge.org/docs/mongrel_cluster.html run it with user ioi:ioi 2. Set up Apache in general follow: http://mongrel.rubyforge.org/docs/apache.html 2.1 enable mods run: sudo a2enmod rewrite sudo a2enmod proxy sudo a2enmod proxy_balancer sudo a2enmod proxy_http sudo a2enmod deflate sudo a2enmod headers 2.2 edit virtual host at /etc/apache2/site-(available|enabled) added: =========================================== Options FollowSymLinks AllowOverride None Order allow,deny Allow from all BalancerMember http://127.0.0.1:8000 BalancerMember http://127.0.0.1:8001 BalancerMember http://127.0.0.1:8002 BalancerMember http://127.0.0.1:8003 BalancerMember http://127.0.0.1:8004 Allow from all # can't use proxypass because we want access to balancer-manager #ProxyPass / balancer://mongrel_cluster/ #ProxyPassReverse / balancer://mongrel_cluster/ SetHandler balancer-manager RewriteEngine On # Uncomment for rewrite debugging RewriteLog "/var/log/apache2/ioi_rewrite.log" RewriteLogLevel 9 # Rewrite to check for Rails cached page RewriteRule ^([^.]+)$ $1.html [QSA] # Redirect all non-static requests to cluster RewriteCond %{REQUEST_URI} !^/balancer-manager/(.*)$ RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/(.*)$ balancer://mongrel_cluster%{REQUEST_URI} [P,QSA,L] ===========================================