gpt4 book ai didi

deployment - 使用 MODX 时的最佳部署实践是什么?

转载 作者:行者123 更新时间:2023-12-03 09:45:53 24 4
gpt4 key购买 nike

当您在本地机器上有应用程序的 DEVELOPMENT 版本时,这很方便,您可以将其部署在 STAGE 服务器上进行测试(它是可选的),然后将其部署在 PRODUCTION 服务器上。当项目中的代码和数据有很好的判断力时,您可以相对容易地做到这一点(例如,如果我们将所有代码和设置存储在项目文件中,并将数据存储在数据库中)。

MODX 在数据库中存储模板、片段等。是的,我们可以将此代码移动到静态文件,然后我们可以使用版本控制系统来跟踪这些项目的更改。但是这些在数据库中也有表示行。这意味着如果我们添加或删除一些项目,我们必须像以前一样更新数据库。

看起来如果我们只是复制扩展的文件而不是通过包管理器进行安装,我们也会遇到一些麻烦(因为扩展通常在数据库中有自己的表)。

另一个问题是 DEV 和 PROD 上的应用程序在文件(配置)和数据库(例如用户帐户)中存储了不同的设置。

我仍然没有看到组织迭代 DEV-STAGE-PROD 开发周期的清晰方法。所以,我的问题是:

  • 部署时应该(或必须)复制哪些文件和数据库表?
  • 我应该用什么模式(替换,忽略)?
  • 什么是最简单和最快的方法?

  • 我在这里最担心的是必须处理数据库。

    附言如果重要的话,我正在谈论MODX的“革命”版本。

    最佳答案

    数据库根本不应该存储任何路径信息,以前的版本在 modx_workspaces 表中存储过,但是这已经消失了 [我相信从 2.2.4 开始]。

    如果您担心 url 更改 [dev.mysite.com/stage.mysite.com/production...] 不要 - 这都在 .htaccess 文件中 [曾经有一个 site_url 系统设置,但是它似乎也消失了。]

    您唯一需要担心的文件是 core/config/config.inc.php ~ 创建 3 个具有不同路径的不同文件,或者在迁移时替换它们。

    我移动/更新/迁移 modx 站点的过程是:

    清除缓存!!
    tar cvfz httpdocs.tar.gz httpdocs/
    mysqldump -u -p the_database > export.sql

    移动文件,tar xvfz 并导入数据库。
    检查 modx_workspaves 表是个好主意,如果您使用了旧版本的画廊,也请检查一下,但大多数插件和开发人员似乎习惯于不在代码和数据库表中存储路径信息。

    当然,如果您强化了安装,还有一些步骤,但没什么大不了的。 [参见 rtfm.modx.com 上的“强化 Modx 文章”]

    关于deployment - 使用 MODX 时的最佳部署实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15935786/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com