準備するもの
設定に入る前に、共有するHTMLファイルの数を把握します。1ページであればヘッダーへの直接追記で完結しますが、複数ページがあるなら共通テンプレートを持つビルドシステムかどうかを確認してください。共通テンプレートがあればnoindexの追記は1箇所で済みます。
認証サービスの選定も事前に済ませておきます。ギガサイト便のようなドラッグ&ドロップ型サービスはアップロード時にパスワード設定できるため、サーバー知識がなくても3分以内で認証付きURLを発行できます。自前のWebサーバーを使う場合は.htaccessやNginxの設定が必要になる点を踏まえ、工数を見積もっておきましょう。
- 相手がログインなしで開ける状態か確認する
- PCとスマホで最低1回ずつ表示を確認する
- 内部情報・個人情報・不要な外部送信が残っていないか見る
- レビュー期限と修正時の差し替え方を決めておく
実際の手順
手順1:HTMLの`<head>`タグ内の最初の行に`<meta name='robots' content='noindex,nofollow'>`を追記します。contentの値はカンマ区切りで複数指定でき、`nofollow`を加えることでページ内のリンクもクロールさせない指示になります。
手順2:認証設定済みのサービスにHTMLをアップロードし、URLを発行します。発行後は必ずシークレットウィンドウでURLにアクセスし、①認証画面が先に表示されること、②認証後にページソースにnoindexメタタグが含まれることを目視確認してください。
手順3:確認が取れたらクライアントにURLとパスワード(別ルートで)を送付します。パスワードをURLと同じメールに書くと、メールが転送された場合にセキュリティが破られるため、必ず別のメッセージ手段(Slack DM・SMS・電話)で伝えます。
失敗しやすい点
よくある失敗の一つが、`noindex`のスペルミスです。`no-index`や`no_index`と書いてしまうと無効な値として無視され、インデックスされてしまいます。設定後にソースを`Ctrl+F`で検索して`noindex`が正しく存在するか確認する癖をつけましょう。
もう一つは、認証を「URLパラメータ付き」で共有してしまうケースです。共有サービスによってはパスワードがURLに含まれる形式(例:`?token=xxxx`)になるものがあり、このURLをSNSに貼ると認証が意味をなさなくなります。メール本文にURLを貼る前に、URLにトークンが含まれていないか確認してください。
テンプレ文面
メール件名例:「[要確認] デザインプレビューURL共有(確認期限:〇月〇日)」本文例:「お疲れ様です。デザイン確認用URLをご案内します。本URLは検索エンジン非掲載設定済みです。パスワードは別途Slackでお送りします。URLの第三者転送はお控えください。」
パスワードを別送する際の文面例(Slack):「先ほどのメールのプレビューURL用パスワードは【●●●●】です。期限後は自動でアクセス不可になります。」短く具体的に書くことで、クライアントが手順を間違えるリスクを減らせます。
よくある質問
noindexとnoarchiveは何が違いますか?どちらを使うべきですか?
noindexはページをインデックスに登録しない指示、noarchiveはキャッシュの保存を禁止する指示です。プレビューURLでは両方を設定するのが理想的で、`content='noindex,nofollow,noarchive'`と組み合わせて記述できます。
認証ページのURLがSNSにシェアされてしまった場合、どう対処しますか?
まず該当URLのパスワードを即座に変更します。次に、URLそのものを無効化または変更できるサービスであれば新しいURLを発行し、関係者にのみ再送します。noindexが設定されていれば検索エンジン経由のアクセスは発生しません。
認証とnoindexの両方を設定しても、Webアーカイブサービス(Wayback Machineなど)に保存されますか?
認証付きURLはWayback Machineのクローラーも突破できないため、通常は保存されません。ただし保存を完全に防ぐ保証はなく、公開URLに変更した後に保存されるリスクがあります。機密性が高い場合は公開期間を最短にするのが最善策です。