17

我试图弄清楚文件 /var/resource_config.json 在 Magento 中的用途。它似乎可能是配置的缓存,但看不到它在源代码中的哪个位置被创建和/或更新。

我正在为 EE1.12 构建设置 local/dev/staging/prod 环境,并想弄清楚我是否可以安全地将它从我的存储库中排除,或者我是否需要编写一些更新脚本以进行部署。

也许管理员中的闪存图像上传器创建它?

有什么想法或方向吗?

4

1 回答 1

29

这是“替代媒体存储”系统的配置缓存文件。这是一个系统,其中对媒体文件的请求通过 路由get.php,并允许您将媒体存储在数据库中而不是文件系统中。(这可能过于简单化,因为我自己从未使用过该功能)

您可以安全地(并且应该)将此文件从部署/源代码控制中排除,因为它是一个缓存文件,将根据需要自动生成。有关详细信息,请参阅根级别中的以下代码块get.php

if (!$mediaDirectory) {
    $config = Mage_Core_Model_File_Storage::getScriptConfig();
    $mediaDirectory = str_replace($bp . $ds, '', $config['media_directory']);
    $allowedResources = array_merge($allowedResources, $config['allowed_resources']);

    $relativeFilename = str_replace($mediaDirectory . '/', '', $pathInfo);

    $fp = fopen($configCacheFile, 'w');
    if (flock($fp, LOCK_EX | LOCK_NB)) {
        ftruncate($fp, 0);
        fwrite($fp, json_encode($config));
    }
    flock($fp, LOCK_UN);
    fclose($fp);

    checkResource($relativeFilename, $allowedResources);
}

笼统地说,Magento 的文件夹与 *nix文件夹var的用途相同var

可变文件——在系统正常运行期间内容预计会不断变化的文件——例如日志、假脱机文件和临时电子邮件文件。有时一个单独的分区

并且应该与特定系统隔离(即不是部署的一部分)

于 2012-05-09T19:37:42.653 回答