2011.05.21SEO記事一覧

静的(スタティック)URLと動的(ダイナミック)URL

  • このエントリーをはてなブックマークに追加

更新が頻繁なサイトや巨大サイトを運用する際には、動的なURLを生成させて処理をするケースは多々あるでしょう。本記事ではそもそもの動的URLと静的URLについてと、この2つのSEOとの関連性についてお伝えしたいと思います。

動的URLとは?

動的URLは、ユーザーの要求に応じてその都度、プログラミングで生成されるURLです。

以下のように、URLの中に「?」「=」「&」といった文字列が含まれており、URLパラメーターの名前と値の組み合わせで作られているURLのことを指します。

http://sample.co.jp/product.php?id=1&bar=2

URLパラメータとは?

URLパラメータとは、情報をサーバー側で動くプログラムに送信するために、URLの末尾に付け加える変数(文字列)のことを言います。

例に挙げたURL「http://sample.co.jp/product.php?id=1&bar=2」でいうと、「?(クエスチョンマーク)」から後ろの部分がパラメータになります。

パラメータは、基本的にURL末尾に「?」をつけ、その後ろに「パラメータ名=パラメータ値」を付ける形で使用します。例のURLで言えば「id」がパラメータ名、「1」がパラメータ値になります。複数のパラメータ名・値の組み合わせを使いたい場合は、「&(アンパサンド)」を使い、「product.php?id=1&bar=2」というように最初のパラメータに繋げていくことで使用できます。

アクティブパラメータとパッシブパラメータ

URLパラメータは、2種類あります。

アクティブパラメータ

アクティブパラメータは、 パラメータの値によってページのコンテンツ内容が変化するパラメータのことを指します。ECサイトでよく利用されるパラメータです。

例えば、ECサイトのZOZOTOWNでは、赤色のスカートの商品一覧、緑色のスカートの商品一覧とで以下のようにURLが異なります。

赤色のスカートの商品一覧 http://zozo.jp/women-category/skirt/?p_cocid=12
緑色のスカートの商品一覧 http://zozo.jp/women-category/skirt/?p_cocid=7

URL上の「p_cocid」という部分は、 商品の色をプロダクトの色を指定するパラメータ名(変数)で、「=」の後に記述されている「12」や「7」 という数値が、色の振り分けをする値の部分になっています。
このように商品一覧に対して色によるフィルターをかけたり、または価格順やおすすめ順などに並び変える場合にも、アクティブパラメータが用いられます。

パッシブパラメータ

パッシブパラメータはパラメータ部分の内容が異なっていても、ページのコンテンツが変化しないパラメータのことを指します。

例えば、以下のようなGoogleアナリティクスのアクセス解析のトラッキング用のパラメータがパッシブパラメータになります。

http://sample.co.jp/?utm_source=yahoo&utm_medium=cpc&utm_campaign=aaa

トラッキングのため記述されたパラメータは、パラメータが変わってもコンテンツ内容は変化しません。そのため、パッシブパラメータは「ダミーパラメータ」とも言われます。

静的URLとは?

静的URLとは、動的URLに入っている「?」や「=」、「&」といったパラメーター名・値が記載されていないURLのことを指します。

URLの末尾が「/(スラッシュ)」や、「.html」「.php」などの拡張子で終わるURLです。

http://sample.co.jp/product-1.html

http://sample.co.jp/product-1/

SEOの観点ではどちらが有利?

では、動的URLと静的URL 、どちらのほうがSEOの評価が得られやすいのでしょうか?

結論から言えば、動的URLと静的URLとで大きな差はありません。

ただし、動的URLと静的URLのSEOの関連性については、いくつか理解すべきポイントがあります。

動的URLはGoogleに認識されるし、インデックスされる

過去、動的URLはGoogleが適切に認識できないとされていました。

同じ内容のページでも、動的URL、つまりURLパラメータが異なる場合、Googleクローラーは全てのパラメータ付きのURLをクローリングしてしまおうとしてクロール量が膨大になると言われていました。クロールの負担が大きくなるため、パラメータ付きURLが生成されているサイトはクロールされにくくなるというような問題が発生していたようです。

そのため、静的URLの方がSEO上は有利で、動的URLの場合は静的URLにとにかく書き換えることが好ましいとされてきました。

書き換え手段として使われていたのは、URLリライトを用いたURLの擬似静的化というものです。

この動的URLから静的URLに書き換えるサイト運営者の行動を受け、2008年にGoogleが公式ブログにおいて、動的URLでも問題なくクローリングできることを発表します。

英語版のみのページとなっているため、以下は抜粋した文を翻訳したものです。

静的または静的に見えるURLがサイトの索引付けとランク付けに有利であると信じる多くのウェブマスターに出会いました。これは、検索エンジンにセッションIDやソーストラッカーを含むURLのクロールおよび分析に関する問題があるという前提に基づいています。しかし、実際のところ、Googleでは、両方の分野である程度の進歩を遂げています。ユーザーがURLを容易に読むことができるため、静的URLはクリック率の点でわずかに有利になるかもしれませんが、データベース主導のWebサイトを使用することを決定しても、索引付けとランク付けに関して大きな不利益はありません。検索エンジンに動的URLを提供することは、パラメータを静的に見せるためにパラメータを隠すよりも優先されるべきです。

引用元:Google Webmaster Central Blog

上記発言の通り、現在、パラメータ付きのURLが検索結果に出てくることは多々あります。

でも、なんだかんだいってシンプルなURL構造を求めている

しかし、一方でGoogleは、Search Consoleのヘルプページでも、検索エンジン最適化スターターガイドでも、「複数のパラメータが含むような複雑なURLではなく、シンプルでわかりやすいURLが好ましい」と言っています。

サーチコンソールのヘルプページでは下記のように動的URLにはクロールの問題が発生しそうな、2008年の発言とは少し違うのではないかと受け取れるような記載があります。

特に複数のパラメータを含む URL など、過度に複雑な URL は、サイト上の同じまたは同様のコンテンツを表す多数の URL を不必要に作成し、クロールの際に問題が生じることがあります。

引用元:Search Consoleヘルプ

また、検索エンジン最適化スターターガイドでも下記のように静的URLを推奨しているような記載もあります。

URL がページの内容と関連す る単語を含んでいれば、ID や不可解なパラメータで構成された URL に比べて、ユーザーと検索エンジンの両方にページについて の情報をより多く伝えられます。

引用元:検索エンジン最適化スターターガイド

無理に今ある動的URLを静的URLにしなくていい

結局動的URLと静的URLどっちがいいの?と混乱してきますが、2008年のGoogle公式ブログの内容は、どちらが良いという話ではそもそもないのです。

というのも、すでに存在する動的URLを静的URLに書き換えた場合、パラメータ付きであることで検索エンジンにて判断ができていたURLを静的URLにしてしまうことがあります。同じ内容の静的URLのページをたくさん作ってしまったり、ページが変わったのに静的URLへの書き換えの設定を変え忘れたりと、逆にページの内容が判断しにくくなるリスクがあるのです。そのために、「検索エンジンに動的URLを提供することは、パラメータを静的に見せるためにパラメータを隠すよりも優先されるべき」という話なのです。

また、動的URLを静的URLにすること自体がダメ、というわけでもありません。同記事では、静的URLへの書き換えについて下記のようにしっかり書き換えの管理ができるならやっても問題ない、と記載されています。

書き換えが不要なパラメータの削除に限定されている場合、または問題を引き起こす可能性のあるすべてのパラメータを削除することに非常に注意を払っている場合を除き、それが推奨されます。

この書き換えの話については、同様の話が検索エンジン最適化スターターガイドにも以下引用の通り、記載があります。

Google は非常に複雑な構造の URL もクロールすることができま す。しかし、サイトの URL をできる限りシンプルにすることで、 ユーザーにも検索エンジンにも親切なものになります。そのため動 的な URL を静的な URL に書き換える努力をされるウェブマスター もいます。書き換えることに問題はないのですが、これは高度な作 業であり不正確に行われてしまった場合は、クロール関連の問題を 引き起こす原因となる可能性があることにご注意ください。

パラメータによる重複発生が気になれば、rel=”canonical”を使う

動的URLの書き換えに関する話は2008年のことなので、結構前の話です。実は重複したURLの統合・正規化ができるrel=”canonical”の対応したのが2009年。

今は重複が発生するパラメータ付きのURLをGoogleに不用意にクローリングされたくないのであれば、rel=”canonical”で正規のURLを指し示してしまうのがシンプルです。

また、Search Consoleではパラメータ付きURLが存在する場合に、重複を防止するためにパラメータの意味を伝えるGoogleに伝えることが機能「URLパラメータ」が存在します。

サイトをこれから立ち上げる段階で、書き換えをしたい場合

まだサイトが企画段階で、書き換えを行いたい場合は、.htaccessやhttpd.confを用いて擬似的に静的(スタティック)なURLとして処理する方法を選択しましょう。.htaccessを使用するのが手軽です。

該当ディレクトリの「/product.php?id=1」を「/product-1.html」、「/product.php?id=2」を「/product-2.html」として書き換えたい場合は下記のようにします。

RewriteEngine on
RewriteRule product-([0-9A-Za-z)]+).html$ product.php?id=$1

この場合サイト内の内部リンクも書き換え後のURLに統一が必要なことに注意してください。

おわりに

動的URLと静的URLについてと、それぞれのSEOでの優劣について説明しました。
お伝えしたいことをまとめると、以下の通りです。

  • 静的URLでページを作れるのであれば、ユーザーにとってもわかりやすいので静的URLにしたほうがいい
  • かと言って無理に動的URLを静的URLにすることはない。無理にすることで逆にわかりづらくなるリスクがあるから
  • パラメータによる重複ページの発生が気になるのであれば、 rel=”canonical”やSearch Consoleの機能を使う

この情報が、WEBサイト運営者の皆様の少しでも役に立てれば幸いです!

 

  • このエントリーをはてなブックマークに追加
The following two tabs change content below.
digital-marketing

digital-marketing

デジタルマーケティング研究所では、デジタルマーケティングの施策・広告・技術を、分析・実装・検証して、WEB担当者・マーケティング担当者の方の役立つ情報を発信していきます。