Javaのresponse.sendRedirect
ページの移動などによりURLが変わり、旧ページに接続した人を新ページにリダイレクトさせる時、ApacheではなくJavaの
response.sendRedirect
を使うと
HTTPステータスコードが302
になります。HTTP Status Code【302】とは?
301 Moved Permanently(恒久的な移転)ステータス・コードが恒久的な移転の際に用いる301ではなく、一時的な移転の際に用いる302を使うと
302 Moved Temporarily(一時的な移転)
旧ページの評価などの情報が新ページに引き継がれませんので、SEO対策としてはよくありません。
恒久的な移転の場合は
301
を使う必要があります。Javaで【301】リダイレクトするには?
responseのsetStatusとsetHeaderを使いますとHTTPステータスコードを指定して他のページへ移動するのが可能になります。response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); response.setHeader("Location","http://www.test.com"); return;※因みに、以下のように使うと【302】になります。
response.sendRedirect("http://www.test.com"); return; //もしくは response.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY); response.setHeader("Location","http://www.test.com");
結果
・sendRedirectを使った場合・setStatus、setHeaderを使った場合
0 コメント:
コメントを投稿