Webエンジニア susumuis の技術ブログ

このブログの内容は個人の見解であり、所属する組織の公式見解ではありません

フロントエンドをJavaScript化してるページを検索してみた

 昨日アップしたテストページGoogleで検索できるようになっていました。(現時点でbingにはまだインデックスされていませんでした。)

 残念ながら、JavaScriptによって挿入された動的な部分では検索できませんでした。枠として出力した静的なHTMLの部分では表示されますが、そりゃそうですね。となると、metaタグのkeywordとかdescriptionで頑張る方式しかないです。

 例えば、ECショップの商品ページを一個のHTMLで作成して、商品情報は後からJSONPで動的に取得して表示するといったアプローチは取れない、取っても商品ごとに検索にヒットさせられないということです。商品一つ一つに静的ページを作るのは無理(それが大変だからシステム化するのだから)なので、結局サーバーサイドテンプレートエンジンが必要になってくるのかな。で、それを使うとappengineでは遅いという。

 プレビューはできてるんだから、ページ表示後一定時間以内に動的出力された文言はキーワード化するとかしてくれたらいいのに。もう少し、現代のサーチエンジンには頑張って欲しいです。(笑)

 「もはや検索の時代じゃない、Likeボタンだ」

という向きもあるかもしれませんね。だけど、

Googleの提供するプラットフォーム(appengine)上で最適なアーキテクチャ(→http://d.hatena.ne.jp/higayasuo/20101109/1289290143)でページを作ると、Googleの主役の検索エンジンでヒットしないページが出来る

などということは、冗談も厳しいのではなかと思うのですが。

サーチエンジン頑張ってください

代替案

検索エンジン用のページを作って、それをクロールさせるとかそういった逃げがあるかもしれませんね。Rhinoかなんかを裏で走らせたら重いだろうと思ったけど、単なるプレーンテキストに近いページをpythonかなんかでデータだけ並べて取ってくればいいかも。
しかし、完全に静的なHTMLだとリダイレクト(それもmetaタグによる)しか遷移する方法がないので、どうやって検索エンジンをそっちを誘導するかが結局問題になることに気がついた。

appengine 1.4pr が出てた

おおぉぉぉ!
http://blog.virtual-tech.net/2010/11/google-app-engine-prerelease-sdk-140-is.html

これで、インスタンスを常に維持してればいいってこと?



↑ちなみに、これができても僕の仕事上(なぜ数日間にわたって一連のエントリを書いていたのかのワケ)はあんまりメリットがない。