Zed Shaw
2006-Feb-03 07:21 UTC
[Rails] [ANN] Mongrel HTTP Library 0.2.2 (Serving Directories)
Hey Folks, Another announcement of Mongrel -- the fastest little web server library for Ruby yet. This release is nice in that it should build on win32 better and it now sports a small DirHandler that can serve directories and files. This means Mongrel is closer to replacing WEBrick as a Rails debug runner. You can get the releases and information from: * http://rubyforge.org/projects/mongrel/ -- project page * http://mongrel.rubyforge.org/ -- RDoc documentation. == Install and Upgrade People who use(d) RubyGems can simply do: gem install mongrel -or- gem upgrade And they''ll get the new gear. You can go back to the project page and download the source .tgz if you installed using that. == Changes * Fixed a header so that win32 folks can build it. * Added all CGI parameters that didn''t cause security or performance problems. * Forced the sockets to not do reverse name lookup (huge performance hit for little benefit). * Created a REQUEST_URI parameter that has the original untouched URI used in the request. This is the string used to lookup the handlers and create the SCRIPT_NAME and PATH_INFO parameters. * Implemented a basic directory serving handler called DirHandler. It will serve files in a directory, print a simple directory listing, and tries to protect against malicious path requests. * Some minor code clean-ups and additional documentation regarding constants used. == The DirHandler The really simple DirHandler is used like this (from the examples/ simpletest.rb file): h = Mongrel::HttpServer.new("0.0.0.0", "3000") h.register("/files", Mongrel::DirHandler.new(".")) h.run.join This simply sets things up so that when people go to /files, they get the contents of the current directory. The DirHandler expands the path you give it so that when requests come in, it can expand them too and make sure that both paths have the same prefix. If not it will reject them. There is also an option to turn off the directory listings using the second parameter to DirHandler.new(). This initial file serving is very simplistic since it doesn''t map extensions to mime types yet. It should be a good start for some people though. == Feedback Thanks for all the feedback and bug reports so far. With directory serving and complete CGI parameters out of the way I''m going to start working on a Rails runner using Mongrel next, and possibly a caching system. Goal for the weekend will be to get a Rails application running in Mongrel standalone. Enjoy! Zed A. Shaw http://www.zedshaw.com/
Larry Kelly
2006-Feb-04 00:15 UTC
[Rails] [ANN] Mongrel HTTP Library 0.2.2 (Serving Directories)
So, to clarify for us windows types, if I run gem install mongrel on my windows box, I still need to find someone with a MicroSoft C compiler to build it before I can use it ?? Is that right? -Larry On 2/2/06, Zed Shaw <zedshaw@zedshaw.com> wrote:> > Hey Folks, > > Another announcement of Mongrel -- the fastest little web server > library for Ruby yet. This release is nice in that it should build > on win32 better and it now sports a small DirHandler that can serve > directories and files. This means Mongrel is closer to replacing > WEBrick as a Rails debug runner. > > You can get the releases and information from: > > * http://rubyforge.org/projects/mongrel/ -- project page > * http://mongrel.rubyforge.org/ -- RDoc documentation. > > == Install and Upgrade > > People who use(d) RubyGems can simply do: > > gem install mongrel > > -or- > > gem upgrade > > And they''ll get the new gear. You can go back to the project page > and download the source .tgz if you installed using that. > > == Changes > > * Fixed a header so that win32 folks can build it. > * Added all CGI parameters that didn''t cause security or performance > problems. > * Forced the sockets to not do reverse name lookup (huge performance > hit for little benefit). > * Created a REQUEST_URI parameter that has the original untouched URI > used in the request. This is the string used to lookup the handlers > and create the SCRIPT_NAME and PATH_INFO parameters. > * Implemented a basic directory serving handler called DirHandler. > It will serve files in a directory, print a simple directory listing, > and tries to protect against malicious path requests. > * Some minor code clean-ups and additional documentation regarding > constants used. > > == The DirHandler > > The really simple DirHandler is used like this (from the examples/ > simpletest.rb file): > > h = Mongrel::HttpServer.new("0.0.0.0", "3000") > h.register("/files", Mongrel::DirHandler.new(".")) > h.run.join > > This simply sets things up so that when people go to /files, they get > the contents of the current directory. The DirHandler expands the > path you give it so that when requests come in, it can expand them > too and make sure that both paths have the same prefix. If not it > will reject them. There is also an option to turn off the directory > listings using the second parameter to DirHandler.new(). > > This initial file serving is very simplistic since it doesn''t map > extensions to mime types yet. It should be a good start for some > people though. > > > == Feedback > > Thanks for all the feedback and bug reports so far. With directory > serving and complete CGI parameters out of the way I''m going to start > working on a Rails runner using Mongrel next, and possibly a caching > system. Goal for the weekend will be to get a Rails application > running in Mongrel standalone. > > Enjoy! > > Zed A. Shaw > http://www.zedshaw.com/ > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails >-- Best Regards, -Larry "Work, work, work...there is no satisfactory alternative." --- E.Taft Benson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060204/7f5e5841/attachment-0001.html
Zed Shaw
2006-Feb-04 00:33 UTC
[Rails] [ANN] Mongrel HTTP Library 0.2.2 (Serving Directories)
Yes, I''m going to try building pre-compiled gems for win32 and OSX this weekend (to coincide with the next release). Zed A. Shaw http://www.zedshaw.com/ On Feb 3, 2006, at 7:15 PM, Larry Kelly wrote:> So, to clarify for us windows types, if I run > > gem install mongrel > > on my windows box, I still need to find someone with a MicroSoft C > compiler to build it before I can use it ?? > > Is that right? > -Larry >
Larry Kelly
2006-Feb-04 13:05 UTC
[Rails] [ANN] Mongrel HTTP Library 0.2.2 (Serving Directories)
That sounds wonderfull. I love you''re agressive release cycle! -Larry On 2/3/06, Zed Shaw <zedshaw@zedshaw.com> wrote:> > Yes, I''m going to try building pre-compiled gems for win32 and OSX > this weekend (to coincide with the next release). > > Zed A. Shaw > http://www.zedshaw.com/ > > On Feb 3, 2006, at 7:15 PM, Larry Kelly wrote: > > > So, to clarify for us windows types, if I run > > > > gem install mongrel > > > > on my windows box, I still need to find someone with a MicroSoft C > > compiler to build it before I can use it ?? > > > > Is that right? > > -Larry > > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails >-- Best Regards, -Larry "Work, work, work...there is no satisfactory alternative." --- E.Taft Benson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://wrath.rubyonrails.org/pipermail/rails/attachments/20060204/eef63aac/attachment.html