htaccess等による30xリダイレクトが使えない際のページリダイレクト
サーバ側で301、302リダイレクトができない状況下で、
特定のURLへのアクセスを、特定ページへリダイレクトさせたい、というお話。
window.location.href
に、http-equiv="refresh"
もおまけして、
以下な感じのリダイレクト用index.html
を設置しました。
<!DOCTYPE html>
<html>
<head>
<title>Redirect page</title>
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=//djeeeno.blogspot.com/">
<script>window.location.href = "//djeeeno.blogspot.com/";</script>
</head>
<body>
Please click <a href="//djeeeno.blogspot.com/">here</a> if you are not redirected automatically.
</body>
</html>
コピペする際には//djeeeno.blogspot.com/
を置換してください。
余談ですが、Googlebotさん的には、以下な感じらしいです。
- 基本的にはサーバ側で
30x
リダイレクト使ってね。(Google推奨) - クロールする際はJavaScriptは解釈するよ。
http-equiv="refresh"
は、W3Cが推奨してないよ。
可能なら、htaccess
なり、サーバ側で30x
リダイレクトの方が良いみたいですね。
参考
Google がサポートしているメタタグ - Search Console ヘルプ
2018/02/05 追記 そのHTMLの書き方、本当に合ってますか? - HTMLの検証を行う「Nu Html Checker」を以て修正したものを追記しました。
<!DOCTYPE html>
<html>
<head>
<title>Redirect page</title>
<meta charset="utf-8">
<meta http-equiv="refresh" content="0; url=//djeeeno.blogspot.com/">
<script>window.location.href = "//djeeeno.blogspot.com/";</script>
</head>
<body>
Please click <a href="//djeeeno.blogspot.com/">here</a> if you are not redirected automatically.
</body>
</html>