mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Added PATH_INFO access from the request that allows urls like the following to be interpreted by rails: http://www.example.com/dispatcher.cgi/controller/action -- that makes it possible to use rails as a CGI under lighttpd and would also allow (for example) Rublog to be ported to rails without breaking existing links to Rublog-powered blogs. #728 [Jamis Buck]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@802 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
6ef19fcd48
commit
8cddbf0d37
3 changed files with 15 additions and 3 deletions
|
@ -1,6 +1,8 @@
|
|||
*SVN*
|
||||
|
||||
* Fixed that caching the root would result in .html not index.html
|
||||
* Added PATH_INFO access from the request that allows urls like the following to be interpreted by rails: http://www.example.com/dispatcher.cgi/controller/action -- that makes it possible to use rails as a CGI under lighttpd and would also allow (for example) Rublog to be ported to rails without breaking existing links to Rublog-powered blogs. #728 [Jamis Buck]
|
||||
|
||||
* Fixed that caching the root would result in .html not index.html #731 [alisdair]
|
||||
|
||||
|
||||
*1.5.0* (24th February, 2005)
|
||||
|
|
|
@ -77,6 +77,10 @@ module ActionController
|
|||
(%r{^\w+\://[^/]+(/.*|$)$} =~ env['REQUEST_URI']) ? $1 : env['REQUEST_URI'] # Remove domain, which webrick puts into the request_uri.
|
||||
end
|
||||
|
||||
def path_info
|
||||
env['PATH_INFO']
|
||||
end
|
||||
|
||||
def protocol
|
||||
env["HTTPS"] == "on" ? 'https://' : 'http://'
|
||||
end
|
||||
|
@ -86,7 +90,7 @@ module ActionController
|
|||
end
|
||||
|
||||
def path
|
||||
path = request_uri ? request_uri.split('?').first : ''
|
||||
path = path_info ? path_info : ( request_uri ? request_uri.split('?').first : '' )
|
||||
end
|
||||
|
||||
def port
|
||||
|
|
|
@ -54,6 +54,12 @@ class RequestTest < Test::Unit::TestCase
|
|||
assert_equal "/", @request.path
|
||||
end
|
||||
|
||||
def test_path_info
|
||||
@request.env["PATH_INFO"] = "/path/of/some/uri"
|
||||
assert_equal "/path/of/some/uri", @request.path_info
|
||||
assert_equal "/path/of/some/uri", @request.path
|
||||
end
|
||||
|
||||
def test_host_with_port
|
||||
@request.env['HTTP_HOST'] = "rubyonrails.org:8080"
|
||||
assert_equal "rubyonrails.org:8080", @request.host_with_port
|
||||
|
@ -67,4 +73,4 @@ class RequestTest < Test::Unit::TestCase
|
|||
@request.port = 81
|
||||
assert_equal "rubyonrails.org:81", @request.host_with_port
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue