私のアプリは、1 つのプライベート管理と 1 つの支払いゲートウェイの 2 つの部分で構成され、異なる URL に展開されます。
https://manage-my-app.com
https://pay-my-app.com
vhost
ただし、ドメインは同じファイルで管理されているため、1 つのサーバーに存在できる必要があります。
これらの各 URL で個別に実行するように Google アナリティクスを構成したいのですが、できるだけ多くの構成を環境変数に保存します (12Factor に準拠)。
いつ GA をロードするかを決定するためにアプリ環境 (開発、ステージング、本番) を使用することは避けたいと思います。また、使用する変数をできるだけ少なくしたいと考えています。
私は使用することを考えています:
# manage-my-app.com vhost config
SetEnv GA_CODE something
# pay-my-app.com vhost config
SetEnv GA_CODE somethingelse
次に、私のコードで、次を使用します。
<?php if ($ga = getenv('GA_CODE')) : ?>
// do google analytics here
<?php endif; ?>
これは私のすべての拠点をカバーしていると思います:
- 設定はENVにあります
- 各デプロイメントには独自の分析コードがあります
- 各デプロイメントは独自の文字列のみを維持する必要があります
- 分析 (開発、ステージングなど) を使用しないデプロイには、javascript は含まれません。
しかし、拡張性が十分ではないのではないかと心配しています。
例:
支払いゲートウェイが当社のプライバシー ポリシーに準拠するために特別な分析コードまたは構成が必要な場合、どのようにアプローチを変更すればよいですか?
2 つのパスを避けたいのですが、2 つのパスが唯一の方法である場合、URL に頼ることはできません。
<?php if ($ga = getenv('GA_CODE')) : ?>
<?php if ($url == 'pay-my-app.com') : ?>
<!-- do it one way -->
<?php else : ?>
<!-- do it some other way -->
<?php endif; ?>
<?php endif; ?>