Ah yes, here's the solution I landed on =>

require 'mongrel/handlers.rb'

class MultipleDirHandler < Mongrel::DirHandler
 # check in each folder for the file
 def initialize(*path)
   @paths = path
   super(@paths[0])
 end

 # check each folder
 def can_serve(path_info)
   @paths.each do|path|
     @path = File.expand_path(path) # to allow RAILS_ROOT
     ret = super(path_info)
     return ret unless ret.nil?
   end
   @path = @paths[0]
   return nil
 end

end


Working really well.   Thank you!

-Todd

On 12/27/06, Zed A. Shaw <[EMAIL PROTECTED]> wrote:

On Wed, 27 Dec 2006 13:17:28 -0500
"Todd Fisher" <[EMAIL PROTECTED]> wrote:

> I'm wondering if it's possible to setup mongrel to have multiple
document
> roots?  The use case I'm trying to solve is one where I have a library
of
> shared CSS/JS/Images and would like multiple rails application to use
them.
> I have written a proxy controller and added some routes to serve the
static
> files and it works reasonably well, but is extremely slow, because it's
> single threaded.  I'd like mongrel to serve these files.  I'm wondering
if
> there is a way to use -s option to add an aditional document root
handler.

Piece of cake.  Let's say I want a rails public directory to be at both /
and at /newplace/ then I just do this:

1) Put this in a mongrel.conf file:

  uri "/newplace", :handler => DirHandler.new("public")

2) Run mongrel like this:

  mongrel_rails start -S mongrel.conf

3) Go to http://localhost:3000/newplace/ and you see the same thing as
http://localhost:3000/

That's it.

--
Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu
http://www.zedshaw.com/
http://www.awprofessional.com/title/0321483502 -- The Mongrel Book
http://mongrel.rubyforge.org/
http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help.
_______________________________________________
Mongrel-users mailing list
Mongrel-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/mongrel-users

_______________________________________________
Mongrel-users mailing list
Mongrel-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/mongrel-users

Reply via email to