動的URLはSEO上不利になるか考察
2018年06月25日
ウェブサイトを構築するときに、動的URLがサイトを構築する場合に必要となる場合があります。
動的URLとは以下のようなURLで、英語ではquery string(クエリストリング)というようです。
http://ドメイン名/ディレクトリ名/product.php?id=◯◯◯
id=◯◯◯の数字の部分によって、表示されるページが変わるといったかんじです。
この動的URLというのは、SEO上不利になるのかというのは昔からしばしば議論されていて、関係あるとか無いとか言われていました。
公式には、Googleは動的URLだろうと静的URLだろうとGoogleは同様にページを扱うということを表明しています。
しかし、私はいろいろなサイトで実験をしてみた結果として、やはり動的URLはSEO上不利と言えるという結論に至りました。
何故動的URLはSEO上不利なのか
何故動的URLはSEO上不利になるのかということを考察すると、Google botが、複数のページを個別ページだと認識してくれないケースがあるからです
具体的にいうと
http://ドメイン名/ディレクトリ名/product.php?id=1
http://ドメイン名/ディレクトリ名/product.php?id=2
http://ドメイン名/ディレクトリ名/product.php?id=3
・・・
・・・
・・・
http://ドメイン名/ディレクトリ名/product.php?id=126
みたいな商品ページが120ページあるページがあったとして、Google botが、それらを個別ページだと判断せず、1つのページしかGoogleの検索結果にインデックスしない場合があります。
この場合、Googleのウェブマスターツールでは、インデックスカバレッジの項目で
Google により、ユーザーがマークしたページとは異なるページが正規ページとして選択されました
(英語で「Google chose different canonical than user」)
と表示されます。
なぜこういう現象が起こるのかは不明なのですが、例えば上記の例だと
http://ドメイン名/ディレクトリ名/product/1.html
http://ドメイン名/ディレクトリ名/product/2.html
http://ドメイン名/ディレクトリ名/product/3.html
・・・
・・・
・・・
http://ドメイン名/ディレクトリ名/product/126.html
のほうが、個別ページだと認識をしてくれやすいようです。
また、
http://ドメイン名/ディレクトリ名/product/1
http://ドメイン名/ディレクトリ名/product/2
http://ドメイン名/ディレクトリ名/product/3
・・・
・・・
・・・
http://ドメイン名/ディレクトリ名/product/126
のほうがおそらく個別にインデックスしてくれる可能性は高いと思います。
仮にインデックスされた場合はページの評価はどちらのURLでも変わらないと思うのですが、動的URLでは全てインデックスされない場合があるということが分かったので、静的URLのほうが有利であるという結論に個人的には至りました。
Google botが、何故個別ページを単一のページと誤認するケースがあるのかは謎ですが、アルゴリズム上そういう事例が発生する場合があるということが分かったので、私も考えを改めました。
動的URLを静的URLとして扱うためには、サーバ側の設定でmod_rewriteを利用したり、あるいはプログラム上の処理で工夫をする必要があります。