For Rails 3.2 or Rails 4+
You should use request.original_url
to get the current URL. Source code on current repo found here.
This method is documented at original_url method, but if you’re curious, the implementation is:
def original_url
base_url + original_fullpath
end
For Rails 3:
You can write "#{request.protocol}#{request.host_with_port}#{request.fullpath}"
, since request.url
is now deprecated.
For Rails 2:
You can write request.url
instead of request.request_uri
. This combines the protocol (usually http://) with the host, and request_uri to give you the full address.