サイト制作者が知っておきたい、これから始めるSEOのポイント10

[4] 空Aタグやiframeをなくす

 CMSのプログラムやHTMLのテンプレートを使っていると、作業ミスやバグによって、空Aタグが存在していることがある。

<a href=""></a>

 これは前述のリンク切れと同じ状態になるので避けたいものの1つだが、何も表示されない状態なので普段見つけることはできない。何かしらの機会にwgetなどでHTMLファイル群を手元に集め、いくつかのミスパターンを想定してチェックしておく。

$ grep 'href=""' *.html
$ grep '"></a>' *.html

 加えて、iframeを使って要素を表示している場合は本当にそのiframeが必要かどうか再検討しよう。iframeはAタグと同じように評価されており、iframeのsrcに指定されているURLはリンク先になる。問題なのは、iframeを使う多くの場合、src=で指定されたHTMLページには戻るリンクがなく、リンク構造的には行き止まりになってしまっていることだ。行き止まりはリンク切れと同じ状態なので、こういった要素は置かないほうが良い。

[5] imgタグにはaltを設定し、適切な文字を使う

 imgタグを設置した場合、alt属性の設定を忘れがちだ。アクセシビリティとしてもHTML文法的もaltの設置が必要だということもあるが、altを利用したSEOスパムへの対策が行われているので正しく設定しておく。

<img src="/img/sample.png" alt="サンプル画像">

 この際、altに文字が必要だからといって「alt="画像"」を使いまわしてしまうというのはNGだ。「画像」キーワードのスパムになってしまう。画像が表示されない場合、もしくはスクリーンリーダーで閲覧している人向けに、1つ1つ適切である文字列を設定しくようにする。

 なお、アイコン画像などには文字は必要ない。観点としては「スクリーンリーダーで閲覧している人に必要な情報か?」で間違いがない。デザイン画像はimgタグを使わずCSSスプライトへ移行しておくのがベストだが、ひとまずということであれば「alt=""」としておく。CSSスプライトについては「画像ファイルの最適化とスプライト画像の作り方」の記事にまとめてある。

[6] ページを削除したとき、ないときは404を返し、メンテナンスは503を返す

 Webサーバーでは、ページが存在しないURLにアクセスがあった場合に404のステータスコードを返す。当たり前の動作であるが、CMSやWebサーバーの設定によっては、ページが存在しないのに正常応答の200を返してしまうことがある。昔のSEOでは404を正しく返さないことはそれほど気にする点ではなかったが、現在は404応答すべきページが200応答しているとソフト404と判定され、評価されない要素の1つとなっている。

 また、404を正しく応答することによって、サイト内リンクのリンク切れを見つけやすくなるメリットもあり、リンク切れに対応しやすくなることで結果的にサイトの価値が上がることになる。

 404応答が正しくできているかを確認するには、WebブラウザのURL入力で適当な文字(/aaaaaaaaa)などを入力してその応答を見ることが簡単だ。たとえばGoogle Chromeで閲覧している場合はF12キーもしくはCtrl+Shift+IキーからNetworkタブを選択すればアクセスの様子が確認できる。

図1 HTTPステータスコードを確認

 図1のように404となっていれば正常だ。404が返ってきてさえいれば、ページの表示内容は新着リストがあったりサイト内検索があったりと、どのようなものでもかまわない。

 なお、以前は削除したページのURLをトップページへ301リダイレクトしておくと良いというSEO的な対処方法もがあったが、これからは辞めたほうが良い。これもソフト404の対象になっているので、存在しないページは素直に404応答するようにしよう。

ロードバランサーの導入を検討

 404応答の実装と同じく重要なのがメンテナンス時の503応答である。バックエンドの入れ替えなどでどうしてもサイト停止を伴うときは、503応答にしておいたほうが良い。本来的にも503を返すべきものである。何かしらの事故やメンテナンスで単純不通となり、しばらくサイトアクセスができない状態が続くとサイトの評価は下がっていく。1日ぐらいの不通時間があると目に見えて検索順位は低下してしまう。

 対処方法としては、ロードバランサーがフロントにあればロードバランサーで503を返すのが楽である。ロードバランサーがなく、Webサーバーがフロントにある状態で動作しているようであれば、代替えマシンや別プロセスで503を応答できるようにしておき、その間にシステムのメンテナンスを行い、元に戻すという流れになるだろう。理想をいえば何かトラブルを検知したら503ページが表示されるような仕組みを用意しておくというのがベストである。そういった機能はロードバランサーに用意されている。

>>次ページ:ページングなども含めアンカーテキストは適切な文字例にする

おしらせ