BLOG

[Craft3] SEOプラグインをインストールしたら、設定ミスって検索に引っかからなくなった話

2018-10-08 09:51:00

Craft CMS Craft 3 SEO

Seo

Craft 3にはいろいろなプラグインがありますが、そのなかに『SEO』というプラグインがあります。インストールしてサイトマップを生成してアクセスアップを目論んだものの、サイトの設定を間違えて逆に検索に引っかからなくなりました。ここではその原因ととても簡単な解決策についてまとめます。

なにが起こったか

サイトマップを生成してしばらくしてGoogle Search Consoleをのぞいたところ、謎のエラーが発生していました。

『送信されたURLにnoindexタグが追加されています。』head内にそんなメタタグを入れてたっけとテンプレートを確認しましたが、該当のタグはありませんでした。

原因

SEOプラグインを入れたタイミングで発生したのはほぼ確実なので、どこでどんな風に設定されているんだろうと、プラグインのソースを追いかけたところ発見することができました。



SeoService.phpの34行目あたりに、こう書かれています。このプラグインは開発モードの場合はHTTPヘッダに"x-robots-tag: none, noimageindex"を追加していました。このx-robots-tagヘッダは、クローラーにページをインデックスさせるかを制御することができます。ここに"none"を指定すると、メタタグでいうところの"noindex, nofollow"に検索結果に表示されなくなり、コンテンツ内のリンクも辿ってもらえません。"noimageindex"を指定するとコンテンツ内の画像がインデックスに登録されなくなります。つまり、Craft 3を開発モードで運用している場合、このSEOプラグインをインストール・アクティベートすると検索に引っかからなくなります

解決策

解決策は簡単です。開発モードから変えればOKです。Craft 3では.envで設定することができます。.envのENVIRONMENTの値を以下の部分を"production"など別の文字列に変更します。

ENVIRONMENT="dev"

これで、Google Search Consoleでエラーの修正を報告してしばらくすると再び検索に引っかかるようになります。
今回は自分のサイトだったので開発モードのままで公開していたのがあだになりました。Craft 3のサイトを公開する際は、開発モードで公開しないように注意した方がよいかなと思います。