# Deploying rails

**URL:** <https://www.ruby-forum.com/t/deploying-rails/56180>\
**Category:** Rails\
**Created:** [March 28, 2006, 4:41pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180 "2006-03-28T16:41:08Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [March 28, 2006, 4:41pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180/1 "2006-03-28T16:41:08Z")

</div>

Hi,

I thought I’d give lighttpd and FastCGI a go but the latest version I’ve  
found for fastcgi is 2.4.0 which was released in January 2003. Is this  
the right version?

Can anyone recommend the versions I should use for FastCGI et al and  
where to find them? I’m not sure I’ve really found what I’m looking  
for…

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [March 28, 2006, 5:18pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180/2 "2006-03-28T17:18:59Z")

</div>

On 3/28/06, Pete [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> –  
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).
> 
> * * *
> 
> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

## May I suggest looking into Mongrel? [http://mongrel.rubyforge.org/news.html](http://mongrel.rubyforge.org/news.html) Works great on Win2003!!

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [March 28, 2006, 5:39pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180/3 "2006-03-28T17:39:47Z")

</div>

Is there any benefit to mongrel over FastCGI ? I’m just trying to figure  
out how it fits in 🙂

Not too familiar with all this stuff as I’ve come from a PHP / Java  
background and have never needed to play with CGI et al 🙂

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [March 28, 2006, 5:44pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180/4 "2006-03-28T17:44:25Z")

</div>

Also, what is the point of putting say apache in front of lighttpd? If  
people wanted to use lighttpd because it handles better than Apache  
udner load… then why put Apache in front of lighttpd? :S

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [March 28, 2006, 5:51pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180/5 "2006-03-28T17:51:29Z")

</div>

On 3/28/06, Pete [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Also, what is the point of putting say apache in front of lighttpd? If  
> people wanted to use lighttpd because it handles better than Apache  
> udner load… then why put Apache in front of lighttpd? :S

Because you might have older apps (PHP maybe) already up and running  
on Apache virtual hosts. Your lighttpd sevrer basically handles one  
of those hosts and runs your Rails app.

– James

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [March 28, 2006, 6:00pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180/6 "2006-03-28T18:00:49Z")

</div>

Say you’re on a shared box and don’t have administrator access, which is  
required to bind lighttpd to port 80. Apache virtual hosting is usually  
bound to port 80 by default, so if you’re on (e.g.) TextDrive you _must_  
have Apache proxy its requests for [http://yourdomain.tld/](http://yourdomain.tld/) over to  
[http://yourdomain.tld:0000/](http://yourdomain.tld:0000/) (where 0000 is the port number you’ve set up  
for  
lighttpd).

Similarly, your server may have some content running under Apache  
(again,  
bound to port 80 by default) and your lightty server is running in  
addition  
to other stuff. Your options are to switch to lighttpd for _all_ your  
web  
serving needs, but depending on your situation that may not be  
convenient or  
possible. So putting Apache in front makes it easy to use lighttpd for  
Rails  
and Apache for everything else.

If you’re in a situation where you either do not have admin access or  
must  
use Apache to serve some content on a given domain, then you should put  
Apache in front.

If your Rails app is going to be served on its own (sub)domain, or if  
you’re  
in a position to serve EVERYTHING via lightty, and you have  
administrator  
access, then you can simply bind lighttpd to port 80 and cut out the  
middleman.

- DD

On 3/28/06, Pete [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

–

David D.  
Owner and Web Chef, Practicalmadness  
removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![pete](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/3ab097/32.png) [@pete](https://www.ruby-forum.com/u/pete)\
**Post date:** [March 28, 2006, 6:10pm UTC](https://www.ruby-forum.com/t/deploying-rails/56180/7 "2006-03-28T18:10:16Z")

</div>

If the majority of the app is dynamic content i.e there are a few  
graphics files etc but only a few, is it worth going with lighty +  
mongrel / fcgi or could mongrel be used happily by itself?

In the end ( not neccesarily with this app ) but I would want to scale  
as it is described in the “agile development on rails” book. I figured  
I’d try and learning how to set it up properly before I urgently needed  
it 🙂
