0

PlayWebフレームワーク1.2.4を使用しています。

アプリケーションにユーザープロファイルがあり、ログインしていないユーザーに公開したいと考えています。

つまり、私のサイトがhttp://www.testsite.comの場合のようになります。

htp://www.testsite.com/user1にuser1のプロファイルを表示させ、htp://www.testsite.com/user2にuser2のプロファイルを表示させます。Facebookがそれをどのように行ったかのように。

これを行うための最良の方法と、Googleや他の検索エンジンにプロファイルページのインデックスを作成する方法を提案してください。

上記のURLの「htp」は実際にはhttpです。URLが2つ以上ある場合、質問を送信できません。

ありがとう、サワン

4

1 に答える 1

0

まず、ユーザーがwww.testsite.com/user1にアクセスしたときに表示するサイトにサービスを提供するコントローラーメソッドを作成します。これがコントローラーのbar(String username)メソッドだとしましょう。Fooだからあなたは次のようなものを持っています:

public class Foo extends Controller {

    public static void bar(String username) {
        // Do something in here and render the response. I will just render a sample text here.
        renderText("Hello " + username + "!");
    }

}

ここで、ルートを設定する必要があります。したがって、routesファイルに次のように入力します。

GET     /{username}         Foo.bar(username)

ルートファイル内のルートの順序が重要であることに注意してください。このルートが一番下にあることを確認して、/edit/{id}このルートの前にのようなルートが定義されるようにしてください。そうしないと、playは、何らかのメソッドsite.com/edit/123を呼び出すFoo.bar("edit/123")代わりに、要求を呼び出しに解決する可能性がありますFoo2.edit(123)。これは、ほとんどの場合、おそらく必要なことではありません。

これを試して今に行くとhttp://localhost:9000/sawan、これは表示されるはずですHello sawan!。適切なモデルとコードを追加すると、そのページに必要なものを表示できるようになります。

グーグルインデックスに関しては、クローラーはこれらのユーザーページを発見できる必要があります。サイトマップを作成してgoogle(http://support.google.com/webmasters/bin/answer.py?hl=en&answer=156184)に追加できます。動的に更新するには、これらのユーザーページのインデックスを作成し、サイトマップやメインページのリンクなどを介してGoogleにアクセスできるようにする必要があります。ただし、私はSEOの専門家ではないため、より優れている可能性があります。自分でさらに情報をグーグルで検索します。

于 2013-02-14T20:26:37.903 に答える