スポンサーリンク

動的なクエリ文字列を含む「GETパラメータ付きURL」はSEOに悪影響せず,静的に変更する必要なし。「理解しやすいURL」をこころがけよう

「GETリクエストのパラメータ」を含むURLは,SEO的に不利なのだろうか?

.htaccessなどの設定を変えて,スラッシュ区切りの「静的URL」に書き換えるべきだろうか?

下記で解説。

静的URLへ,無理して書き換えるべきではない

パラメータ文字列を,無理に改変して「静的URL」に書き換えると,マイナスになる。

動的URLから静的URLへの変更は,無理して行うべきではない。


なぜかというと,動的URLのままなら「/?パラメータ名=値」となっており
Googleから見ても意味がわかりやすい。

ところが,静的URLに書き換えて「/値/」だけのURLにしてしまうと,
「何のパラメータがその値なのか?」という意味を
URLからくみ取ることができない。

Googleにとって,理解しづらいURLになってしまうのだ。


だからこの場合は,動的URLのままのほうが,Googleから見て高評価を保ちやすい。

グーグル、動的URLはそのまま、静的URLへ書き換えすべきでない | 海外SEO情報ブログ
https://www.suzukikenichi.com/blog/google-prefers-dynamic-url-rather-than-static-url/

  • 今回Googleは、動的URLはそのままにしておくべきで、静的URLに変換することはかえってマイナスになると、指針を180度転換しました。
    • 技術の進歩により、動的URLの処理性能が向上し、パラメータが何を意味するのかも理解できるようになったそうです。

動的URLのままでよいが,「パラメータの名称をわかりやすく」するべし

大事なことは,
「URLが含むパラメーターの意味をGoogleが理解しやすい」
ということ。

ほかのWebアプリでもよく使われているパラメーター名,

または,シンプルな英単語のパラメーター名を使おう。

不必要に静的化したURLよりもパラメータ付きURLをGoogleは好む | 海外SEO情報ブログ
https://www.suzukikenichi.com/blog/google-prefers-the-clean-parameterized-url-to-unnecessary-url-rewriting/

  • パラメータの文字列から内容を想起できて, かつ幅広く使われているパラメーター名であるなら、Googleにとってはパラメータの意味を理解しやすくなります。


パラメータの名称の決め方として,

「ページ内の内容と関係があるようなパラメータ名」がよい。

そうすれば,URLを見ただけで,ページの内容を推測しやすくなり
ユーザフレンドリーなURLだと言えるから。

Google 検索エンジン最適化(SEO)スターターガイドについて(サイト構造の改善 URLの構造を改善しよう) | インバウンドマーケティング/Facebookアプリ/Web制作 Hivelocity ハイベロシティ
http://www.hivelocity.co.jp/blog/3261

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

パラメーターの数が多い場合は,静的URLに書き換えるか,Webマスターツールで設定しよう

動的URLから静的URLへの書き換えを行ったほうがよいケースは,

パラメータの数が3つ以上で,URLが読みにくい場合だ。


こういうケースでは,静的URLへの書き換えによってSEO上もプラスの効果がある。

「ユーザーフレンドリーなURL」になるよう配慮しよう。

URLの静的化は行ったほうがよいのか? URLの実績検証 | もうSEOなんて大嫌いだ!
http://yutasuzuki.com/directory/url-static/

  • さすがに パラーメーターの文字数が長かったり、「?」や「&」などの演算子が3つ以上あったりすると Googleもインデックスしづらい
    • 静的化をしてから大幅にインデックス数が促進されました。


パラメータ付URL SEO対策 info.
http://www.infodot.jp/seo/parameter.html

  • Googleは、2006年10月まで、 "&id=" から始まるパラメータのURLをインデックスしなかった。
    • これはGoogleのウェブマスターガイドラインにも記載されていた。
    • しかし、2006年10月に Googleの「ウェブマスターのためのガイドライン」が更新され, インデックスされるようになった。
  • 多数のパラメータが付いたURLは問題がある可能性がある。
    • パラメータの数は1~2が望ましい。
    • ユーザーフレンドリーなURLにリライトすることが望ましい。


どうしても動的URLのままで,パラメーターの数が多くなる場合は,

Google Webマスターツールで設定しておこう。

動的URLと静的URLは、どちらのほうがSEO上有利になりますか? | SEO対策Q&A [SEO HACKS]
http://www.seohacks.net/basic/qa/dynamic-static-address_disadvantage/

  • 現在の検索エンジンにおいては、動的URLでも静的URLでも、SEO上の優劣の違いはありません。
    • 以前は、静的URLのほうが有利であると言われていた。
    • 最近では検索エンジンの処理能力も改善し、動的URLでも静的URLと大差なく処理できるようになっている。
  • パラメータが複雑になる場合には, ウェブマスターツールでURLパラメータの設定を行っておく

動的URLは,「コンテンツの重複が発生しやすい」のが問題点。重複を避ければ問題なし

注意点は,「重複コンテンツの発生を避ける」ということだ。


パラメータを含む動的ページの場合,
URLしだいで自由にページ内容を変えられる。

なので,URLが似ていれば,ページ内容も似たものになってしまう。

そうすると「重複ページ」(ミラーページ)が発生してしまい,SEO的にはペナルティを受ける。


明らかにわかることだが,これはURLの問題ではない。

Webアプリの設計の問題だ。

URLが静的であろうが,動的であろうが,重複コンテンツの対策は必要だから。


しかし,パラメータ付きのURLであれば,重複は発生しやすくなる。

重複コンテンツによって生じる問題とその対策 | SEO基礎知識 [SEO HACKS]
http://www.seohacks.net/basic/knowledge/duplicate-content/

  • 重複コンテンツが生成される状況として、下記のような場合が挙げられます。
    • URLの表記に一貫性が保たれてない場合
    • URLにパラメータが付与され、動的にURLが複数生成される場合


SEOの“新”ベストプラクティス(中編) - URL正規化/alt属性/meta keywords/フッターリンク など | Moz - SEOとインバウンドマーケティングの実践情報 | Web担当者Forum
http://web-tan.forum.impressrd.jp/e/2009/07/22/6106

  • パラメータを含むURLの使用はお勧めしない。
    • (既存のCMS設定などが原因で)どうしても必要な場合、パラメータの数は2つ以内にすることを推奨する。
  • パラメータ付きURLは,往々にして重複コンテンツの問題につながる。
    • これは相関データからも裏付けられていて、静的URLを持つページの方が, 高い順位を取る傾向が強い。


【事例】URLの擬似静的化はハマればものすごいSEO効果を生み出す | Next Generation SEO
http://seo.septeni.net/seo/1544.html

  • 複雑な動的URLは「インデックスされづらい」「ミラーページが発生しやすい」という2点の理由から、SEO上推奨出来ない。

パラメータの有無で,評価やキャッシュが分散してしまう現象に備えをしよう

「パラメータ付きの動的URL」の注意点として,

パラメータの有無によって評価が分散してしまいかねない,

という点がある。


まずPageRankについてだが,

パラメータの有無でページランクが分散せぬよう,

Google側では正規化してインデックスされる。

ページ側でも,canonicalなURLを提示するのを忘れないようにしよう。

URLのパラメータ有り無しで評価が分散しない為のSEO解決策
https://www.allegro-inc.com/seo/url-parameter

  • oogleのクロールチームは、パラメータ付きとなしのページで評価が分散しないよう、インデックスの正規化処理をしている。
    • 一般的なURLパラメータタグ、トラッキングタグを使用していれば、大抵は検知する事ができる。


また,普通にページを作ると,

パラメータなしのURLの内容が,Google内に保管される。

ページ内容のキャッシュも,パラメータなしのURLである。


なので,パラメータなしのURLの内容も,しっかりと作りこんでおくようにしよう。

[SEO]パラメータ付URLをキャッシュさせたい場合を考える | FEEL FINE
http://www.mizukkou.com/?p=279

  • かつての上司より以下のような相談を受けました。
    • Yahoo!では、パラメータ付きURLでキャッシュされてて、 Googleでは、パラメータ無しのURLでキャッシュされている。 パラメータ付きURLに統一できないもんかね!?

WebページのURLの長さは,ブラウザのGETリクエスト制約で,最大2000文字ほどに制限したほうがよい

URLの長さは,最大でも2000文字ほどの長さに収める必要がある。

これは,「GETリクエストの最大長」の制約となる。

  • (通信プロトコル面) HTTPの仕様上は,URLの長さに制限は無い。
  • (クライアント,ブラウザの面) IEは,URLの長さに制限がある。


つまりIEのせいなのだが…,

これはWebの世界では,事実上の標準的なリミットということだ。


そのため,GETのパラメータ文字列も,無限に長くはできない。

クエリ文字列を含めて,全体で2000文字ほどに収める必要がある。

Webアプリの設計時には注意しよう。

参考資料

HTTPの仕様では,もともとURLの長さに制限は無い。

[tech]HTTP GETメソッドのURIの長さ制限を調べてみた - Kazumi007の日記
http://d.hatena.ne.jp/Kazumi007/20090921/1253501500

  • HTTP1.1の仕様上は,HTTP GETで転送できるデータ量(=URIの長さ)には上限がない
    • HTTP GETメソッドにはRFC上、URIに255byteの制限はない
    • Webサーバ側でも,デフォルトでは制限されていますが、設定で変更することが可能。
  • いくらサーバ側で長いURLを受け付けられたとしても、ブラウザからリクエストを送信できなければ意味がありません。
    • IEは, MicrosoftがURLの上限に関する情報を公開している。 IE3.0~IE8.0までが対象となっているので、ほぼすべてのバージョンで2083文字以上の指定ができないと考えた方が良い
    • 制限が小さいせいで、IEがデファクトスタンダードになっている。


URLは最高何文字まで可能なのでしょうか? - HTML 解決済 | 教えて!goo
http://oshiete.goo.ne.jp/qa/7969461.html

  • HTTP 1.1 (RFC2616) では,URIの文字長に制限はありません
    • また,例えば data: スキーム(RFC 2397)ではURLは非常に長くなる。リソース自体を文字列化して URL にしてしまうため,リソースが大きくなれば文字列も膨大なものになる。
  • 送信フォームなどでURLの長さを200文字くらいに制限しているところもある
    • その目的は,データベース側が保存できる容量によるものだったり、サイト攻撃のスクリプトなどを埋めこまれないようにするための処置だったりする。


IEだけが特殊なブラウザであり,約2000文字を超えるURLを処理できない。

ChroneやFirefoxなどのモダンブラウザでは,32000文字ぐらいまで処理できるのに。

IE11で使用可能なURL文字数が2083文字しかない件 - 文系プログラマによるTIPSブログ
http://www.bunkei-programmer.net/entry/2014/09/03/213528

  • chrome等も厳密には制限はありますが,実質制限が無いのと同じ状況。
    • 実際はchromeの文字数制限より先に、webサーバ側のパケットサイズ制限にひっかかる
  • web開発者にとっては, URLの使用文字数というのは非常に重要
    • IEが対応してないからURL設計を特殊にしたり、IEだけjs/cssがおかしいから条件分岐したりするなど、IEだけおかしいという仕様のために,我々開発者は長年苦しめられている。


IE11 の URL の最大長はあいかわらず 2083 でした。他のブラウザは三万超えているのに・・・ : logical error
http://logicalerror.seesaa.net/article/383427331.html

  • IE11: 2083
  • Google Chrome: 32464
  • Firefox: 32491


Webサイトを開発する際に,

「IEだけは,なぜかAjaxが正常に動かない」などのトラブルに苦しめられ,

その原因がURLの長さだったりする。

[IE] URL に使用可能な文字数は最大 2,083 文字 | [ま]技術雑記
http://blog.kaburk.com/browser/ie-url-max-2083.html

  • サーバに非同期通信してた気がしたのでソースを調べてみると、prototype.jsにてAjax.Requestしていた。
    • しかし、そこのメソッドがGETになっていた。
  • IEで動かないという時にまず思い浮かんだのが、「URL長すぎ」


もし,URLの文字数を気にせず,たくさんのパラメータを送りたい場合は,

GETではなくPOSTでフォームを設置するようにしよう。

【PHP】GETとPOSTの違い、使い分けと使い方を紹介
http://scene-live.com/page.php?page=27

  • GETメソッドはデータをURLの末尾につけて送るので、制限されることになります。
    • 大量のデータを送信したい場合はPOSTメソッドを用いる
    • POSTメソッドは、URLの長さの制約から影響を受けない。


なお,この「URLを2000文字以下に制限」という制約は,

Webアプリとブラウザだけの問題ではない。

検索エンジンやSEOの観点から見ても,2000文字以下が推奨されているのだ。

「URLの長さは2,000文字より短くした方がいい」とGoogleのMueller氏がアドバイス | SEOモード
http://www.seomode.jp/seo/2014/03/08/2725/

  • サイトマップXMLで処理できるURLの長さも「2,048文字以下」と指定されています。

今は逆効果!外部リンクにrel=nofollow属性を付け,内部PageRankを上げるSEO手法は「PageRankスカルプティング」として2009年に無効化された

「外部リンクには "nofollow" 属性をつけろ」というSEO手法は,2009年に終了している。


「外部にPageRankを渡さなければ,内部リンクの評価が高まるはず・・・」

そんな考えは,もう通用しない。

PageRankスカルプティング」は終わったのだ。


nofollow属性を誤用すると,逆効果になる。

正しく使うにはどうしたらよいか?

(1)nofollowによるPageRank操作は,もうできない。2009年に無効化された

以前は,nofollowの有無によってPageRankを上げたり下げたりしていた。

SEO業界では「ページランク・スカルプティング」という名称のテクニックとして知られていた。

Google PageRankスカルプティングはもう役に立たない! | 海外SEO情報ブログ
https://www.suzukikenichi.com/blog/google-pagerank-sculpting-does-not-work-any-more/

  • あるリンクにnofollow属性を付けたとする
    • このリンクに与えられるはずだったPageRankは、nofollowの付いていない普通のリンクに回される
    • その分だけ,nofllowのないリンクは,PageRankを余分に多く受け取るので,SEO的に有利になる。これがPageRankスカルプティング。
    • 重要でないページにPageRankを渡さずに、重要なページにより多くのPageRankを渡せます。
  • ところが、この仕組みが変わった。
    • nofollowが付いたリンク先ページが受け取ったはずのPageRankが、nofollowが付かないリンク先ページに回されるのではなく、そのまま破棄されてしまうようになった。


このテクニックは,2009年から無効になった:

本当に内部リンクにrel=”nofollow”は不要なのか - SEOのホワイトハットジャパン
http://whitehatseo.jp/why-internallink-need-nofollow/

  • Google検索エンジンのアルゴリズムが変更された
    • rel=”nofollow” がついたページにはページランクは渡らない。
    • そして、渡らなかった分のページランクは消滅するという仕様になりました。


ナビゲーションメニューを設置するときに、よくある8つの間違い | LPO コンサルティング
http://www.lpo-consulting.com/2009/05/navigation-mistake/

  • ナビゲーションメニュー上のリンクに対して nofollow属性を付けて,アンカーテキストがSEOに有利になるように操作しよう,という試み。過去のテクニックである。
  • 「最近(2009年6月)になって、PageRankスカルプティングが機能しなくなったので、nofollow を使うのは、ちょっと考えもの


このような意図的な操作を行うと,逆にペナルティ対象になってしまう。


「nofollowのあからさまな誤用や多用によって,

PageRankの受け渡しを人工的に操作しようとしている・・・」

と判断されると,Googleからペナルティを受ける。


検索エンジンをだましてはいけないのだ。

不自然なリンクを張らないようにしよう。

PageRankスカルプティングはペナルティ対象になり得ますか? - Google プロダクト フォーラム
https://productforums.google.com/forum/#!topic/webmaster-ja/4p66cK6was8

  • 外部へのリンクにnofollowをつけまくる事がペナルティ対象なのではない
    • リンクジュースを集中させ、検索エンジンを騙すことがペナルティ対象

(2) "nofollow" 属性が持つ基本的な意味は,スパムコメントや有料広告の排除

nofollowは,SEOで積極的に使うための道具ではない。


無価値なスパムコメントを駆除したり,

お金と引き換えに掲載している広告を識別したり,という用途が本来の目的だ。


nofollow属性を付けたリンクは,PageRankを受け渡さない。

リンク設置によって生じる「SEO上のプラス効果」を,nofollowが無効化するのだ。

rel=”nofollow” 属性の使い方 | なるほどSEO – 初心者のためのSEO対策入門サイト
http://nar-seo.com/seo-knowhow/internal-seo/803/

  • rel=”nofollow” 属性をつけると:
    • リンク先のコンテンツは信頼していない、評価していないリンクであると宣言したことになる
    • リンクジュースの受け渡しや, アンカーテキストによるキーワードの重ね付けが行われなくなります。


nofollowの仕様変更とPageRankスカルプティングが通用しなくなった件 - かちびと.net
http://kachibito.net/seo/nofollow-pagerank-sculpting.html

  • nofollow属性は,元々はブログのスパムコメント でPageRankが流れてしまうのを防ぐ為に導入されました。


外部サイトへのリンクには漏れなく"nofollow"とか、いい加減やめませんか ++ SEO HACKS公式ブログ
http://www.seohacks.net/blog/crawl_index/nofollow_yamere/

  • Googleとしては「金銭などを対価として掲載するリンクにはnofollowを付与する」というルールを設けることで、有料リンク等による順位操作を規制しようとした。
    • Wikipediaを代表として、Yahoo!知恵袋や無料ブログサービスなどでは,外部サイトへのリンクに自動的にnofollowが付与されるようになっている。
    • twitterの投稿のリンクも同様。
  • nofollowが付与されているので、これらのサイトにリンクが掲載されたとしても,直接的なSEOの価値はありません。


具体的にどのようなリンクにnofollowを付与すべきか。

  • ブログのコメント欄,
  • 有料広告,
  • ブログパーツやウィジェット,
  • クロール・インデックスされたくないページ

などが代表例として挙げられる。

えっ! 私のリンク、逆効果すぎ!? リンク効果とnofollowご存じですか?
http://webtan.net/link-nofollow_effect

  • 他サイトへのリンクが,自ページとの関連性を持たない場合は,『rel=”nofollow”』の記載をおすすめします。
    • 意図しない発リンク、例えばブログパーツやウィジェット、アフィリエイトバナーなど
    • これは,Google社のスパム侍ことマット・カッツ氏が公式にコメントしてますので確かな情報。


nofollowとは?rel="nofollow"の利用用途と使い方をまとめてみた
http://viral-community.com/seo/nofollow-2793/

  • 検索結果に表示されたらマズイ「ページ」へのリンクについては、「nofollow」を指定します。
    • 例えば、Webサイトの管理者のみが見ることのできるページの場合、そのページがGoogleに登録されていて、検索結果に表示されていたらマズイ
  • 有料広告へのリンクもnofollowが必要
    • ページランクが転送されていて、かつ有料広告だとGoogleから認識されたら、それだけでペナルティを受けてしまう。

(3)外部リンクの作成自体は,悪いことではない。自ページの有用性を高めるから

「nofollowをつけなかったら,発リンクによって損するのでは?」

と考えてはいけない。


外部リンクを張ること自体は,「ユーザに有益な情報を提供している」ことになるので
悪いわけではないのだ。


ただし,危険なサイトやペナルティを受けているサイトへリンクを張ってしまうと,
自分のサイトまで巻き添えを受け,評価が下がってしまう。

そういうリンクは張らないほうがよい。


なので,本当に役立つリンクだけを張るようにしよう。

SEOの素朴な疑問20個に答えます - SEOのホワイトハットジャパン
http://whitehatseo.jp/seo%E3%81%AE%E7%B4%A0%E6%9C%B4%E3%81%AA%E7%96%91%E5%95%8F20%E5%80%8B%E3%81%AB%E7%AD%94%E3%81%88%E3%81%BE%E3%81%99/

  • 外部のサイトへリンクを張ることによって,より詳しい情報へを示したあなたのサイトはユーザーにとって有益なものとなり、ユーザーはあなたのサイトを評価するはず。
    • ユーザーに愛されるサイト=Googleに愛されるサイトなので、ユーザー目線でリンクを張りましょう。
  • ただし,Googleに嫌われていそうなサイトへリンクを張るときは気をつけたほうがいい。
    • ペナルティを食らっていたり、マルウェアに感染していたり、管理者が変わってスパムサイトに変貌していたりするところにリンクを張っていると、こちらまで巻き添えを食らい検索ランキングの順位が下がってしまうので。
  • 対処方法:rel=”nofollow”をつけるか、URLは書くがハイパーリンクは張らない。


外部SEO対策・内部SEO対策、どちらが重要か
http://www.arigatou365.com/archives/569

  • 気をつけることとしては、 自分のサイトからやたらと外部にリンクを出さないということ。
    • 発リンクは,自分のサイトからエネルギーが漏れてしまう 「穴」だと考えるべし。
  • ただ、関連ジャンルの本当に役立つサイトへのリンクは, 逆に自分のサイトの評価も高める
    • それでもその判断基準は曖昧ですので、 発リンクには原則として「ケチ」になったほうがいい。

(4)リンクの貼りすぎや,トップページ上での外部リンク多用はNG

外部リンクが多すぎるのは,トラブルのもとだ。

むやみやたらに外部へのリンクを張ると,

「外部への誘導を目的としたスパムサイト」とみなされるため。


とくに,自サイトのトップページには,外部サイトへのリンクは設置しないようにしよう。

トップページ内にどうしても外部リンクが必要ならば,

ぜひnofollow属性を付けよう。

引き算が重要!下がった検索順位を戻すためのサイト調整方法 | 沖縄 ホームページ制作|株式会社ドリームテラー
http://dreamteller.biz/seo/how-to-recovery-seorank/#i-4

  • 外部サイトへの発リンクが多いと、検索エンジンからの評価が下がってしまうケースがあります。
    • 外部サイトへのリンクが多いサイトは, 誘導が目的でサイト自体の価値は低い, と見なされてしまうため。
    • これは, <a>タグ内にrel=nofollowを入れる事で回避できます。
  • 特にサイトの顔となるTOPページに外部サイトへのリンクが多数あるのは問題ですので、nofollowタグの活用がオススメ。

(5)内部リンクにnofollowを使う意味はあまりない

nofollowの基本的な意味を理解していれば,内部リンクにnofollowを付けるべきかどうかもわかるはず。


nofollowは,価値の低いリンクを排除するのが目的だから,サイト内リンクにnofollowをつけても意味がない。


ページ内のコンテンツの記述と関連性が低かったり,インデックスされたくないURLであれば

サイト内リンクにnofollow属性をつけてもよい。

だが,それ以外の通常の内部リンクでは,nofollowを付ける理由がない。

rel="nofollow" の正しい使い方? - SEOとアフィリエイトとHTMLの微妙な真実
http://review99info.blog111.fc2.com/blog-entry-34.html

  • よく「内部リンクにも rel="nofollow" を使いましょう。」 という記事を見かけますが、それは(むやみに乱発すると)逆効果
    • 内部リンクに rel="nofollow" を使う目的は、つまり、「自サイトの無意味なページにはポイントを与えずに, 有意義なページにのみポイントを集中して そのページの価値を高める」という目的です。


Google、内部リンクにはrel="nofollow"を指定しない方がいいと発表 | マイナビニュース
http://news.mynavi.jp/articles/2010/07/28/nofollow-not-for-internal-links/

  • GoogleのMatt Cutts氏は発言の中で、インターナルリンクに対してはrel="nofollow"を指定すべきでないとアドバイスしている。(2010年の情報)
    • rel="nofollow"は「クロールの優先順位を積極的に指定する方法」としてSEOテクニックとして活用されてきた。が、最近では良い方法というよりは、むしろ不都合が多いとみなしている。
  • rel="nofollow"は, 信頼できないサイトへリンクを指定する際に使う。
    • rel="nofollow"を指定したリンクは, ページランキングの対象にならない。