パーマリンク設定を変更したときにトレイリングスラッシュをURLの最後につけたときだと思います。それが原因で重複コンテンツができたようでした。
そこで、重複コンテンツになってしまったのも気になりますが、トレイリングスラッシュのあり、なしでは何か違いがあるのかを知りたくなったので、分かったことを記事にしています。
私と同じく、トレイリングスラッシュを付けてパーマリンクの変更をしてしまい、重複コンテンツで分からない人も良ければ知識として参考にしてみてください。
トレイリングスラッシュとは?
トレイリングスラッシュって言葉自体を重複コンテンツが発生して初めて知ったけど、トレイリングスラッシュとはURLの1番後ろにつく「/」スラッシュの事。
- https://shu-sait.com/○○○/ ⇐最後のスラッシュが「トレイリングスラッシュ」
- https://shu-sait.com/○○○/△△△ ⇐ないパターン
上記のURLの違いでURLの一番最後に付くスラッシュをトレイリングスラッシュといいます。
トレイリングスラッシュが付く場合と付かない場合の違い
先ず、トレイリングスラッシュがURLの最後に付く場合と付かない場合の違いは何か?
- トレイリングスラッシュが付いてる場合はディレクトリを示す
- トレイリングスラッシュが付いてない場合はファイル示す
てっきりディレクトリもファイルも同じものだと私は思ってたので、大きな違いがあるのか気になったので調べてみることに。
- トレイリングスラッシュがある場合だとディレクトリの中のファイルを探すようで、もしファイルが指定されてないときは、サーバーにあるファイルが表示されるようになる。
- トレイリングスラッシュがない場合は、ルートディレクトリにあるファイルを探して表示する。
やっべ…余計わかんなくなってきた..
トレイリングスラッシュありのURLの場合
https://shu-sait.com/○○○/
○○○/はディレクトリを指すのでトレイリングスラッシュありのときは○○○の中のファイルを探すこと。
トレイリングスラッシュなしのURLの場合
https://shu-sait.com/○○○/△△△ だと ○○○のディレクトリの中にある△△△ファイルを探す。
ディレクトリとファイルの示し方の違いは上記の感じなので、簡単に言うとトレイリングスラッシュ「あり」「なし」の違いは開くファイルに辿り着くまでの流れが違うだけ。
そして、トレイリングスラッシュあり と トレイリングスラッシュなしではゴールは変わらない。
ディレクトリについてもう少し詳しく知りたい場合はディレクトリとは ファイルに行くまでに使うディレクトリの種類の記事を参考にしてみてください。
コンテンツが違う場合と同じ場合の違い
トレイリングスラッシュをパーマリンク設定で変更して重複ページになり、重複URLを統一しなくてはいけないという事については、他にも何か違いがあるのか知りたかったので再調査することに。
トレイリングスラッシュがあるかないかの違いに加えて、コンテンツも違う場合は、検索エンジンは特に技術的には問題ない。
けれどユーザーが見てURLが似てるとわかりずらくなるというユーザー目線での違いがでる。
もう1個、トレイリングスラッシュあり と なしでコンテンツも同じ場合はどうなのか(私のパターンです)
URLも似ていてコンテンツも同じって検索エンジンが見てもユーザーが見ても重複そのものかと…
検索結果に同じコンテンツが2つ表示されても意味ないしGoogleは重複を好まないようなのでURLを統一する必要があり。
だけどコンテンツが同じだったとしても違ったとしてもユーザーと検索エンジンどちらにもわかりやすくするためにはURLは最適な統一をしておくのがベストです。
具体的に私のパターンだと、トレイリングスラッシュなしのURLと、トレイリングスラッシュありのURLどちらのURLで表示してもトレイリングスラッシュありにリダイレクトされてURLが統一されて表示される。
301リダイレクトを使ったURLの統一方法(メモ的に)
今後、重複コンテンツが発生した時のために、URLを統一する方法は何があるのかも覚えておくと良いかもしれないです。
先にFetch as GoogleのHTTPレスポンスを確認して301リダイレクトされてるか確認してみます。
こちらは、トレイリングスラッシュなしURLのHTTPレスポンスコードが301
こちらは、トレイリングスラッシュありURLのHTTPレスポンスコードが200
上記は301リダイレクトをした時のものですが、トレイリングスラッシュなしのURLを、トレイリングスラッシュありのURLにリダイレクトすると上記の画像のレスポンスコードが確認できます。
そして重複してるほうのURLで表示した時にリダイレクト先に統一されていれば、重複ページは問題ないです。
トレイリングスラッシュありのURLもトレイリングスラッシュなしのURLも同じく200を返してしまう場合は自分でURLを統一すると良いと思います。
200は成功レスポンス。リクエストが成功したことを意味します。
URLを統一するためにできること
URLを統一するためにできる事を4個ほど学べたので箇条書きにしておきます。
- サイトマップに使用するURLは優先するURLを使い、重複URLを使用しない
- 301リダイレクトで重複URLを優先URLにリダイレクトする
- 301リダイレクトが使えない場合はcanonical属性を使う
- Fetch as Googleを使って301リダイレクト設定ができてるか確認してみる
上記の4項目で私が知らずにできていたことも必要ないかもしれませんが念のため(笑)
サイトマップは、HTMLサイトマップ・XMLサイトマップの両方ともプラグインを使用していますが確認したところURL全て優先URLに変更済み。
301リダイレクトは、Fetch as Google でステータスが「!リダイレクトされました」の表示が出たときにリダイレクト先が優先URLだったので、そのままリダイレクト。
canonical属性を使う。は301リダイレクトが使えなくはなかったけど、プラグインでできてたらしい。
canonicalについては、別記事の目次2.3canonical属性を使用して正規のURLを指定する方法の部分で記事にしていますので、よければ参考にしてみてください。
以上が私の知識なしのままで出来てたことでした。
まとめ
そしてそして、URL表示の統一を自分では何もしてないのに統一が出来てる場合もありますが、それはGoogle側で正規のURLを指定しているので、Google側で指定したURLが正規URLとして扱われてGoogleの検索結果に表示されることになります。
なのでGoogle側で重複URLを統一してある場合は「何もしなくて良い」という事も、ある意味では選択肢だとも思いますが、最善の策とまでは言えない気がします。
最後に1点だけ、どこのサイトで見たのか忘れてしまったのですが、トレイリングスラッシュがない場合はファイルまで辿り着くまでに1個手順が多いらしいです。
私の脳だと「確かに」と思います。
てことはトレイリングスラッシュがある場合のほうがファイルを開くのが早いという事だと思うので、表示速度も少し早いのかもしれないですね。