リダイレクトを知ろう!
こんにちは。4月に入社しましたTIです。
はや半年が経ち、初めてテックブログを書かせていただきます。よろしくお願いします。
今回私が書かせていただく内容は、
Apacheのリダイレクトループについてお話させていただければと思います。
リダイレクトについて
では簡単にまずリダイレクトとは、
WEBサイトで例えるなら、古いサイトから新しいサイトへ誘導させるための仕組みです。
間違って古いサイトの方でアクセスをした場合、その古いサイトにリダイレクトが設定されていれば
新しいサイトに案内されます。
図に表すと以下のようになっています。
さらに用途によって、リダイレクトには種類があります。
301の具体的な例だと、http→httpsへのリダイレクトなどに用いられています。
また意図した偽装行為だとGoogle側に伝わってしまうと、検索結果から除外されてしまいます。
重複した類似のコンテンツを増やしすぎるのも、Googleではおすすめしてないので、
気を付けていただければ…
https://developers.google.com/search/docs/advanced/guidelines/duplicate-content
ですがいきなり「偽装行為」とも言っても何なのか?と思う方がいるかと思います。
偽装行為の一例として、下2つの図をご覧ください。
このように検索エンジン(クローラ)では安全なサイトを閲覧していますが、
ユーザ側では悪意のあるサイトにリダイレクトされています。
このようなリダイレクトが、偽装行為にあたります。
他にもモバイルとディスクトップで、リダイレクト先が違うことも
偽装行為になってしまいますので、ご注意を!
もしご興味がありましたら、下記サイトをご確認ください
https://developers.google.com/search/docs/advanced/guidelines/sneaky-redirects
リダイレクトループについて
では次に問題のリダイレクトループについて話をさせていただきます。
皆様も作成したWEBサイトにアクセス時「リダイレクトを繰り返し行われています」と表示が出てきた
ご経験はありますでしょうか。
リダイレクトループとは、言葉の通りリダイレクトがループするという意味です。
簡単に言うと、WEBサーバの行先がたらい回しになっている状況だと思っていただければと思います。
原因としては、リダイレクト処理の記述に不備があることが挙げられます。
またロードバランサ配下のサーバなら、アクセスされるプロトコル(HTTPS/HTTP)や
port番号にも気を付ける必要が出てきます。
最後に…
Googleでは、リダイレクトは4回までなら辿るが5回目以降はエラーとして出力すると発表しています。
https://developers.google.com/search/docs/advanced/robots/robots_txt#http-status-codes
リダイレクト設定のしすぎは、アクセス遅延にもなりますので気を付けて設定していただければと
思います。
記事を見てくださり、ありがとうございます。少しでもリダイレクトに興味を持っていただければ幸い
です。
それでは、失礼いたします。