method
call
v2.3.2 -
Show latest stable
-
0 notes -
Class: Rack::URLMap
- 1.0.0
- 1.1.0
- 1.1.1
- 1.1.6
- 1.2.0
- 1.2.6
- 2.0.0
- 2.0.1
- 2.0.3
- 2.1.0
- 2.2.1
- 2.3.2 (0)
- 2.3.8
- 3.0.0
- 3.0.5
- 3.0.7
- 3.0.9
- 3.1.0
- 3.2.1
- 3.2.3
- 3.2.8
- 3.2.13
- What's this?
call(env)
public
Hide source
# File actionpack/lib/action_controller/vendor/rack-1.0/rack/urlmap.rb, line 36 def call(env) path = env["PATH_INFO"].to_s.squeeze("/") script_name = env['SCRIPT_NAME'] hHost, sName, sPort = env.values_at('HTTP_HOST','SERVER_NAME','SERVER_PORT') @mapping.each { |host, location, app| next unless (hHost == host || sName == host \ || (host.nil? && (hHost == sName || hHost == sName+':'+sPort))) next unless location == path[0, location.size] next unless path[location.size] == nil || path[location.size] == ?/ return app.call( env.merge( 'SCRIPT_NAME' => (script_name + location), 'PATH_INFO' => path[location.size..-1])) } [404, {"Content-Type" => "text/plain"}, ["Not Found: #{path}"]] end


