非公開アクセス情報を守りながら静的サイトに Stats4U を設置する
技術的な確認済み:
この記事の内容
静的サイトでも、自前のホストで PHP を動かしたり訪問者データベースを管理したりせずに Stats4U カウンターを読み込める。ブラウザーが Stats4U から埋め込みを読み込み、計測はサービス側で行われる。ただし、正常に動くかどうかは公開 HTML、ホストのポリシー、訪問者のブラウザーが必要なリクエストを許可するかによる。
- 公開コードと非公開アクセス情報を分離
- テンプレートにコードを配置して公開
- リクエストとレポートの制約を確認
公開用の埋め込みを準備する
- 新規カウンターはデザインを選び、生成コードをコピーする。既存カウンターでは番号を保つ。サイト編集前に非公開の管理リンクを安全に保存する。アカウントなしで動くカウンターでも、所有者アクセスは保護が必要。
- カウンターを表示したい共通 HTML テンプレートの位置には、公開埋め込みだけを入れる。静的サイト生成ツールから、そのテンプレートが公開ページに反映される必要がある。配備後に生成 HTML を確認する。元のコンポーネントを編集しただけでは、公開ページにコードが入った証明にはならない。
- 所有者トークン、管理リンク、API キーを公開 HTML やリポジトリに入れない。通常の埋め込みに必要なのは、カウンター番号と公開デザイン設定だけ。コミット前にコピーした全文を確認し、非公開ブックマークを設置手順として公開しない。
ホストが対応する埋め込み方式を使う
外部スクリプトが許可される場合は、生成された JavaScript コードと配信中の s4u.js アドレスを使う。これにより更新が埋め込みに届く。ダウンロードしたコピーは、別途更新しない限りコピー時の版にとどまり、サイトを変更しても自動更新されない。
画像、Markdown、BBCode だけが受け付けられる場合は、それぞれに対応する生成コードを使う。画像リクエストは計測できるが、ページの詳細は HTTP Referer または明示したアドレスによる。任意の自動イベントには JavaScript が必要であり、画像だけではフォームの成功確認を観測できない。
公開結果を安全に確認する
自分の許可されたテストページをブラウザーのネットワークパネルで調べる。カウンター番号、コードの重複、遮断されたリソースを確認する。Content Security Policy、エディターのフィルター、ブラウザー拡張がスクリプトや画像の読み込みを妨げることがある。バッジを表示させるためだけに広範なセキュリティ保護を無効にしない。
通常のページ閲覧も計測される可能性がある。設置の診断のために計測画像のアドレスを手動で開いたり、繰り返し再読み込みしたりしない。非表示デザインはバッジがなくても正常に読み込まれる場合がある。表示のために別のコードを追加するより、リクエストと対応レポートを確認する。
カウンターが観測できないものを知る
カウンターが報告するのは Stats4U に届くリクエストと対応した測定値。静的ホストが処理するすべてのリクエスト、サーバーエラー、ダウンロード失敗、帯域使用量は見えない。それらには、利用可能ならホストのログや監視機能が必要になる。静的ホスティングだからといって、その情報が利用できないとは限らない。
静的サイトでも、コンテンツの保守、公開アカウントの保護、適切なプライバシー説明が必要になる。カウンターはその責任をなくすものではない。任意のキャンペーンやイベント計測は設定を理解してから有効にする。基本コードを設置しただけでは、すべての高度なレポートにデータが入るわけではない。
適切な埋め込みを選んで公開
設置ガイドでは、利用できるコード形式と埋め込み後の確認を説明している。
設置ガイドを開く