2011-01-13 39 views
1

我在哪裏我想重定向到一個外部URL 這裏的要求是我在routes.rb中外部URL重新方向問題2

map.connect「/ MyApp的/代碼 :someparam 「, :控制器=> 」FooController的「, :行動=> 」redirect_to_external_url「

以我foo的控制器我有此作用

高清redirect_to_external_url redirect_to的 「http://externalurl.com/#{params[:someparam]}.html」 結束

將重定向到外部URL

那我的問題面向是 重定向後,瀏覽器顯示「http://externalurl.com/bar.html」,而我希望瀏覽器出於「seo」目的顯示「/ myapp/bar」url(例如http://mydomain.com/myapp/bar)。

任何想法如何可以在軌道中實現這一點? Rails的版本,我用的是2.3.4

回答

1
  1. 行動只能是在你的控制器的方法,而不是外部URL(見路由指南)

  2. 當您重定向使用redirect_to的和使用一個外部網址(如你的例子)router.rb將不會涉及

  3. 在你自己的url下顯示一個外部頁面並不那麼容易,一種方法是使用幀轉發或使用反向代理。

'external_url?屬於你自己?還是來自其他人?

+0

外部網址屬於我們,但外部網站是在運行在apache上的Java平臺上實現的。想知道如果我可以在Apache級別(httpd.conf)做一些事情來重寫外部URL並使用mydomain.com而不是外部域名 – Rcoder 2011-01-13 08:57:21