Index: /branches/locker-dev/locker/deploy/bin/rails
===================================================================
--- /branches/locker-dev/locker/deploy/bin/rails	(revision 2280)
+++ /branches/locker-dev/locker/deploy/bin/rails	(revision 2281)
@@ -161,5 +161,7 @@
 Thread.abort_on_exception = true
 
-class Rack::PathInfoRewriter
+# Strip public/dispatch.fcgi out of SCRIPT_NAME so Rails generates nicer URLs
+class ScriptNameRewriter
+  
   def initialize(app)
     \@app = app
@@ -167,8 +169,7 @@
 
   def call(env)
-    env["SCRIPT_NAME"] = ""
-    parts = env['REQUEST_URI'].split('?')
-    env['PATH_INFO'] = parts[0]
-    env['QUERY_STRING'] = parts[1].to_s
+    if env['SCRIPT_NAME'] =~ /dispatch\.fcgi/
+      env['SCRIPT_NAME'].gsub!(/public\\/dispatch\.fcgi/,'')
+    end
     \@app.call(env)
   end
@@ -180,6 +181,5 @@
 
   begin
-    Rack::Handler::FastCGI.run Rack::PathInfoRewriter.new(Rack::URLMap.new("/$appdir" => ${appclass}::Application,
-                                                                           "/" => ${appclass}::Application))
+    Rack::Handler::FastCGI.run ScriptNameRewriter.new(Rack::URLMap.new("/" => ${appclass}::Application))
   rescue => e
    dispatch_logger.error(e)
