【问题标题】:how to configure ATk4 for two sites to one database如何将两个站点的ATk4配置为一个数据库
【发布时间】:2011-10-27 02:12:43
【问题描述】:

对于生产环境,我希望有一个设置,可以让我更新网站代码,但只将少数用户引导到包含新代码的页面(例如我自己和记录错误/增强功能的人),所以我的计划是有这样的设置。

在线有两组所有代码(alpha 和 beta),但只有一个数据库(我意识到这意味着我必须仔细管理数据库问题并保持向后兼容性,但每次更改都应该相对较小且增量,所以认为这没关系)。

在用户表上有一个列,用于标识他们是使用 Alpha 代码还是 Beta 代码。 当我完成代码更改并完成单元测试后,代码将被上传到 Beta 站点,我将在线对其进行测试,因此只有我的用户将被定向到 Beta 站点。

测试完成后,将提出问题/增强请求的用户设置为使用 Beta 站点,以便他们可以通过登录进行测试。确认后,将代码更新应用到 Alpha 站点并进行最后一次测试。该版本即完成。

未登录的用户只能访问 Alpha 站点。

因为对用户信息的第一次访问是在 Frontend.php 中,所以最好的方法是什么 - 我需要有两个 API(Frontend.php)吗?如果需要,我如何决定应该加载哪些基于用户?

目的是确保生产更新不会给所有用户带来问题,因此如果有人对如何管理代码部署有任何建议以避免这种情况,欢迎提出所有建议。

【问题讨论】:

    标签: php deployment frameworks production-environment atk4


    【解决方案1】:

    我会并排创建 2 个环境。 API 将检查用户偏好并在这些环境之间重定向用户。为了干净的版本控制,我可能不会将类混合在一起或尝试保持相同的 URL。

    【讨论】:

    • 所以你建议我使用两个不同的 URL,例如mysite.com 和 test.mysite.com 但都具有相同的 config-default.php,因此它们使用相同的数据库。然后我扩展 auth 模块并进行修改,以便当用户登录时,检查我的自定义列,然后重定向到适当的基本 URL - 对吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-08
    • 1970-01-01
    • 2017-10-16
    • 1970-01-01
    • 2010-11-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多