2011-08-26 11 views
5

へのルートエントリ私は、次のリダイレクト機能Playframework:外部URL

GET /google google.com 

どのように私はこれを実装する必要がしたいですか?

+0

外部のURL、それは誤解を招き、標準のナビゲーションエクスペリエンスではありません。私は必要な場所にGoogleへのリンクを追加するだけです。 –

+0

Pere、google.comは単なる例でした。私たちは2つの内部ドメインサイトを持っています...メインサイトとブログサイトを言うことができます(diffドメインの下にあり、別のチームによって管理されています)。私はちょうどblog.comに行くためにdomiain.com/blogの単純なリダイレクトをしたいと思っても、それはアプリケーションの外部にあるので(それは独自のパスを持っている)私はそれのためのルートを使用しないだろうと思っても – roshan

+0

。ルートは、アプリ自体のパス用です。 –

答えて

8

これはルートファイルat this momentから直接行うことはできないようです。

あなたは、コントローラでこれを実現することができます。

public class Application extends Controller { 

public static void google() { 
    redirect("http://www.google.com"); 
} 
} 
+0

ありがとうございます。はい、これはこれまでのところ最良の解決策です(Apache/Webサーバーの前にはありません)。ルートがこのケースを処理できる場合、どのくらいのリソースを保存できるかわからない – roshan

+3

SEOの観点から、ドメインをリダイレクトするときは、 'redirect(" http://www.google.com "、true)を使用することを強く推奨します。 ; 'これは、コンテンツが新しい場所に永続的に移動したことを一時的ではなく(302ではなくHTTPコード301)ボットを検索することを示します。 302リダイレクトの詳細な説明[こちら](http://www.mattcutts.com/blog/seo-advice-discussing-302-redirects/) – pents90

+5

ルートからのダイレクトリダイレクトも利用可能です: 'GET/main controllers.Default.redirect(to =" http://google.com/ ")' – FoREacH

7
GET /google controllers.Default.redirect(to = "http://google.com/") 

(再ポストのforeachのコメントのことは答えとしてここにいる価値があるので)私はへのローカルパスをマッピングすることをお勧めしません

関連する問題