【问题标题】:CakePHP memcached configuration in core.php or bootstrap.phpcore.php 或 bootstrap.php 中的 CakePHP memcached 配置
【发布时间】:2015-03-07 10:48:15
【问题描述】:

我正在尝试找出在 CakePHP 2 中设置 memcached 配置的位置。core.php 和 bootstrap.php 都有设置任何缓存(例如 memcached)的部分,但我仍然没有弄清楚要使用哪个文件.

在我看来,CakePHP 文档对此也不是很清楚。 谁能指出 memcached 配置的哪一部分进入哪个文件。

【问题讨论】:

    标签: cakephp caching memcached cakephp-2.0


    【解决方案1】:

    确实,您可以将配置值放置在任何您想要的位置,即使在它们自己的文件中,只要您将它们加载到core.phpbootstrap.php 中。但是,默认的 2.0 core.php 文件声明其他缓存配置应在 bootstrap.php 中,如下所述:https://github.com/cakephp/cakephp/blob/master/app/Config/core.php#L349

    FWIW,我们根据环境变量 (APP_ENV) 以及覆盖所有其他位置的特定位置加载附加配置文件。我们称它为 core-local.php,但名称并不重要,只要它不在您的 VCS 中进行跟踪即可。

    编辑:

    这是我们加载环境特定配置的方式。这是在我们的core.php 的末尾,因此在它之后加载的配置不会被覆盖。

    $env = getenv('APP_ENV');
    if (is_readable(dirname(__FILE__) . "/core-{$env}.php")) {
      Configure::load("core-{$env}");
    }
    

    结束编辑

    最后,CakePHP 文档非常易于编辑,并且非常欢迎 PR。如果您认为可以澄清文档,只需单击文档页面顶部的链接并编辑即可。然后,您可以使用 GitHub UI 提交 PR。不需要编辑器或 git 二进制文件。

    【讨论】:

    • 嗨@alecho,感谢您的回答。现在更清楚了,但我仍然不是 100% 确定。您能否告诉我您在哪个文件中包含您的自定义配置以及如何。非常感谢
    • @lockdoc 我用在 CakePHP 中加载环境特定配置的示例更新了我的答案。这允许您拥有不同的配置,包括用于 Memcached 的配置,用于开发、暂存和生产(以及您可能需要的任何其他)环境。
    猜你喜欢
    • 1970-01-01
    • 2016-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-12
    • 2014-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多