“允许国家”正在一夜之间贬值



我有一个在NGinx服务器上运行的magento 1.7实例,使用文件系统进行缓存。当我在管理中设置"允许国家/地区"字段时,它可以完美地工作。24小时后,该设置不再应用于站点的前端。但是,管理区域中的设置是正确的。

如果我在管理员中刷新缓存,它在前端会再次工作。如果我删除了var/cache目录中的文件,它将无法正常工作。我的var/cache权限是755

有人知道吗?

提前谢谢。

我终于找到了答案。这是由于制造商所在的国家/地区与Checkout中的getCountriesOptions函数共享缓存密钥。

如果要修复此问题,请覆盖Mage_Catalog_Model_Product_Attribute_Source_Countryofmanufacture类并更改此行

$cacheKey = 'DIRECTORY_COUNTRY_SELECT_STORE_' . Mage::app()->getStore()->getCode();

转换为不同的值,例如

$cacheKey = 'DIRECTORY_COUNTRY_OF_MANUFACTURE_SELECT_STORE_' . Mage::app()->getStore()->getCode();

最新更新