Ruby on Rails
Thursday, September 4, 2014
On Wednesday, 3 September 2014 11:07:53 UTC-4, Ruby-Forum.com User wrote:
I'm trying to set up a route to redirect to my monit interface, but I'm
not sure how to do it. what I'd like is my https://domain.com:3000/monit
to redirect to http://domain.com:2812 .
I tried:
get "/monit" => redirect("#{request.protocol}#{request.host}:2812")
in my config.rb, but it doesn't seem to know about request, base_url or
anything else I can find.
Using double-quotes here will not do what you want - they get evaluated when the routes file is loaded, not per-request. For this case, the block form of redirect is probably what you want:
get 'jokes/:number', to: redirect { |params, request| path = (params[:number].to_i.even? ? "wheres-the-beef" : "i-love-lamp") "http://#{request.host_with_port}/#{path}" } See the docs for ActionDispatch::Routing::Redirection for more info.
--Matt Jones
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/f0f71ba3-74ad-4d1e-baa8-4fe29cb7ca92%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment