ステージング Web サイトが検索エンジン (最初は Google) にインデックスされないようにしたいと考えています。
Wordpress はこれを行うのが得意だと聞いたことがありますが、テクノロジーにとらわれないようにしたいと考えています。
robots.txt で十分ですか? お客様がログインせずにウェブサイトを閲覧できるように、匿名アクセスを維持したいと考えています。
すべてのページに nofollow を追加する必要がありますか?
ステージング Web サイトが検索エンジン (最初は Google) にインデックスされないようにしたいと考えています。
Wordpress はこれを行うのが得意だと聞いたことがありますが、テクノロジーにとらわれないようにしたいと考えています。
robots.txt で十分ですか? お客様がログインせずにウェブサイトを閲覧できるように、匿名アクセスを維持したいと考えています。
すべてのページに nofollow を追加する必要がありますか?
私は通常、ステージング サーバーをパブリック Web に公開することに反対していますが、それがワークフローにとって最適なソリューションである場合は、次の点を考慮してください。
最小限のアプローチ
Disallow: /
最小限のアプローチは、どこにでも重複するコンテンツがあることで自分自身を撃たないようにするための非常に基本的なものです. 別のドメインを登録することで、ユーザーにとって何がステージで何がステージでないかを明確に区別できます。また、環境を移動する必要がある場合は少しすっきりしますが、そのほうが操作性が高くなります。CNAME も同様に機能しますが、各 CNAME を Google および Bing Webmaster Tools に登録することを忘れないでください。このようにして、必要に応じてドメイン削除ツールを使用できます。
推奨されるアプローチ
robots.txt を追加すると、検索エンジンがコンテンツにアクセスしてインデックスを作成できなくなります。ただし、URL をインデックスに登録しないわけではありません。検索エンジンが特定の URL を認識している場合、その URL を検索結果のインデックスに追加できます。これらは検索結果に表示されることがあります。タイトルは、説明のない URL になりがちです。これを防ぐには、コンテンツや URL を表示しないように検索エンジンに指示する必要があります。認証を前もって追加し、200 OK ステータス コードで応答しないことで、これらの URL をインデックスに追加しないようにエンジンに強いシグナルを送ることができます。私の経験から、検索エンジンのインデックスにリストされている 401 応答コード ページを見たことがありません。
好ましいアプローチ
ステージング サイトを IP フィルターの背後に配置することで、クライアントのみがサイトにアクセスできるようになります。これは、他のコンピューターからアクセスしたい場合に問題になる可能性があり、メンテナンスの頭痛の種になることもありますが、ステージング環境にインデックスを付けたくない場合は、これが最善の方法です。注意点として、他のすべてのリクエスト (検索エンジンや非クライアントなど) が返されないようにする必要があります。それらはタイムアウト応答を受け取り、200 OK を決して提供しないはずです。他の情報を提供することで、望ましくないクローキングと間違えられる可能性があります。
さらに安全を確保するために、メタ ロボットまたは x-robots-header コマンドを各ページに NOINDEX、NOFOLLOW に追加します。これは、IP テーブルが構成ミスで失敗した場合や認証が失敗した場合に備えて...まれですが、発生します。他の理由で構成に触れる人がいる場合。robots.txt ファイルのように、これらのページ レベルのロボット コマンドが本番環境にプッシュされた場合、実際に自分自身を撃つことができます。したがって、開発環境とステージング環境が明確に分離された構成になっていることを確認してください。そうしないと、NOINDEX、NOFOLLOW、または a を押し出すことはDisallow: /
、本番サイトにとって悲惨なことになります。
以下の設定を apache conf にグローバルに追加することで、このサーバー全体を無効にすることができます。または、同じパラメーターを vhost で使用して、特定の vhost のみを無効にすることもできます。
ヘッダー セット X-Robots-Tag "noindex, nofollow"
これが完了したら、返された apache ヘッダーを確認してテストできます。
curl -I staging.mywebsite.com HTTP/1.1 302 Found Date: Sat, 26 Nov 2016 22:36:33 GMT Server: Apache/2.4.18 (Ubuntu) Location: /pages/ X-Robots-Tag: noindex, nofollow Content-Type: text/html; charset=UTF-8
TLDR; robots.txt
ルート Web ディレクトリにファイルを作成します。このファイルには次の 1 行が含まれている必要があります。
Disallow: /
これは、Google および Bing ボットが Web サイトをインデックスに登録して検索結果に表示されるのを防ぐのに十分です。
このコードを自分のサイトに追加しました (php でコード化):
if( $_SERVER['HTTP_HOST'] == 'test.ate.io' ) {
header("X-Robots-Tag: noindex, nofollow", true);
}
そうすれば、ステージングの構成ファイルが誤って本番サーバーにプッシュされても、問題は発生しません。