public
Created — forked from josevalim/Gemfile

Rails Lightweight Stack. Most of this is detailed on Crafting Rails Applications - http://pragprog.com/book/jvrails/crafting-rails-applications

  • Download Gist
config.ru
Ruby
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
# Run this file with `RAILS_ENV=production rackup -p 3000 -s thin`
# Be sure to have rails and thin installed.
require "rubygems"
require "rails"
 
# Let's load only action controller. If you want
# to use active record, just require it as well.
require "action_controller/railtie"
 
class MyApp < Rails::Application
routes.append do
match "/hello/world" => "hello#world"
end
 
# Let's shrink the stack by removing some middlewares.
# The remaining stack is printed below.
config.middleware.delete "ActionDispatch::Static"
config.middleware.delete "Rack::Lock"
config.middleware.delete "Rack::MethodOverride"
config.middleware.delete "Rails::Rack::Logger"
config.middleware.delete "ActionDispatch::DebugExceptions"
config.middleware.delete "ActionDispatch::RequestId"
config.middleware.delete "ActionDispatch::RemoteIp"
config.middleware.delete "ActionDispatch::Reloader"
config.middleware.delete "ActionDispatch::Flash"
config.middleware.delete "ActionDispatch::BestStandardsSupport"
 
# We need a secret token for session, cookies, etc.
config.secret_token = "49837489qkuweoiuoqwehisuakshdjksadhaisdy78o34y138974xyqp9rmye8yrpiokeuioqwzyoiuxftoyqiuxrhm3iou1hrzmjk"
end
 
# This is a barebone controller. Include the modules you want, more info here:
# http://piotrsarnacki.com/2010/12/12/lightweight-controllers-with-rails3/
class HelloController < ActionController::Metal
include ActionController::Rendering
 
def world
render :text => "Hello world!"
end
end
 
# Initialize the app
MyApp.initialize!
 
# Print the stack for fun!
puts ">> Starting Rails lightweight stack"
Rails.configuration.middleware.each do |middleware|
puts "use #{middleware.inspect}"
end
puts "run #{Rails.application.class.name}.routes"
 
# Run it!
run MyApp

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.