Register now and start sharing your code snippets.
-->
Simple Mongrel HTTP server and custom Mongrel handler example
Ruby posted about 1 year ago by christian
1 # http://mongrel.rubyforge.org/rdoc/index.html 2 # gem install -y mongrel 3 require 'rubygems' 4 require 'mongrel' 5 6 # Usage: ruby mongrel_http_server.rb <host> <port> <docroot> 7 host = ARGV[0] || "127.0.0.1" 8 port = ARGV[1] || 80 9 docroot = ARGV[2] || "html/" 10 11 # Simple Mongrel handler that prints the current date and time 12 class HandlerExample < Mongrel::HttpHandler 13 def process(request, response) 14 response.start(200) do |head, out| 15 head["Content-Type"] = "text/html" 16 out.write Time.now 17 end 18 end 19 end 20 21 # Configure Mongrel and handlers 22 config = Mongrel::Configurator.new :host => host, :port => port do 23 listener do 24 uri "/", :handler => Mongrel::DirHandler.new(docroot) 25 uri "/handler_example", :handler => HandlerExample.new, :in_front => true 26 end 27 28 # CTRL+C to stop server 29 trap("INT") { stop } 30 run 31 end 32 33 # Start Mongrel 34 puts "Mongrel listening on '#{host}:#{port}', serving documents from '#{docroot}'." 35 config.join 36