1

我的应用由 2 个部分组成,1 个私有管理和 1 个支付网关,它们部署到不同的 url:

https://manage-my-app.com
https://pay-my-app.com

它们需要能够存在于 1 台服务器上,但是,域在同一个vhost文件中进行管理。

我想将 Google Analytics 配置为在每个这些 url 上单独运行,但要在环境变量中存储尽可能多的配置(符合 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; ?>
4

0 回答 0