缓存已打开,但var / cache为空?


16

我有一个magento 1.9.0.1,所有缓存均已打开,为什么为var/cache空?我只能从后端清空缓存,但是当它损坏时,我遇到了问题。

magento在哪里将缓存文件写入?


也可能是权限/用户/组问题。
Dan Norris 2015年

Answers:


15

也可能是您使用的是不同的缓存存储一样memcachedRedis


是的,如果magent使用redis / memcached作为缓存存储,则它不会保存在var / cache文件夹中
Amit Bera

那它保存在哪里呢?
黑色

13

如果您有一个var目录甚至一个var/cache目录,但是Magento无法写入它,Magento将sys_get_temp_dir()用来确定放置缓存文件的好位置。

通常是这样/tmp/并导致/tmp/magento/var/cache(谢谢fschmengler)


5
在这种情况下,缓存目录为/tmp/magento/var/cache
Fabian Schmengler 2015年

能否请您访问magento.stackexchange.com/questions/94638/…并进行回复。希望您能提供足够的信息
蝴蝶

它确实对我有帮助
阿米特·贝拉

不要发表感激之词,而要发表评论,请留下评论区域中“真正的”评论和问题:)
Fabian Blechschmidt

我已经在过去做过..所以这次没有反对:)
阿米特·贝拉

6

当magento将缓存文件写入文件/tmp/magento/var/cache夹时,我遇到了这个问题。

这是个奇怪的问题,我已经通过以下命令解决了SELinux的问题。

$ sudo restorecon -R /var/www/html
$ sudo setsebool -P httpd_unified 1

3

它影响到谁。任何以“ .xml” 结尾的文件都可以并且将被使用。
仅将XML文件重命名为类似的内容,oldsomething.xml还必须执行某些操作,例如local.xml.back,文件不以点XML结尾。保留local.xmloldlocal.xml将加载两个文件。

我对内部工作原理还不了解,但是为什么我对它进行了测试就知道它是真的。您可以通过在重新命名的XML中放入会破坏Magento的内容来证明这一点,Magento会停止工作。

也许Magento代码不区分文件名,而仅区分特定位置的扩展名?

我的网站仍在Magento 1.6.2.0上,虽然不太敢
进行更新(它没有损坏),但是我确实将1.8 Redis放在其中,并且似乎可以正常工作。我正在测试1.9.2.0,但还没有准备好迎接黄金时段,因为我的某些扩展不再工作。

尝试https://github.com/steverobbins/Magento-Redismanager。我喜欢它,您可能也喜欢它!


供您参考,Magento 在功能中加载.xml文件。这需要所有与PHP函数在开始时Mage_Core_Model_ConfigloadBase().xmlglob()$files = glob($etcDir.DS.'*.xml');
MatthéoGeoffray

0

设法解决问题,这是有史以来最奇怪的事情。当我更改local.xml来解决此问题时,我将旧文件的备份说成是local_back.xml。我只是删除该文件,现在一切正常。不知道为什么Magento拿起那个文件。无论如何,问题已经解决。


1
app/etc/如您所见,因为magento正在加载每个xml文件\Mage_Core_Model_Config::loadBase
Fabian Blechschmidt

我有bigin magento开发人员
Ashvin Monpara

0

也许有人不了解正在发生的事情或我的答案,因为在其他提交中,Magento将加载以“ .xml”结尾的所有内容。因此,如果您想要不使用的备份或副本,请追加或备份,否则将不起作用!

back_local.xml将不起作用

如果要复制或备份,则需要更改文件名的后缀,或者换句话说,以“ local.xml.backup”的格式更改或完全杀死.xml。在我使用local.xml.backup作为副本时,正在测试中,因为我可以根据需要轻松删除“ .backup”以使用它。您可以始终在不同版本的编辑器中使用“另存为”,例如.back_today或.back2等。

供您参考,Magento在函数loadBase()中的Mage_Core_Model_Config中加载.xml文件。它以$ files = glob($ etcDir.DS。'*。xml')开头的PHP函数glob()接收所有.xml。–MatthéoGeoffray 16年2月17日在14:56

因此,在测试不同的后端时,请使用上述格式。

至于APC内存缓存,它们已经过时,并且不使用Redis之类的密钥。据我了解,两者之间没有显着差异

    <session_save><![CDATA[db]]></session_save>

[文件],[db],[内存缓存]或其他缓存,因为这似乎更多是服务器响应时间和/或服务器上使用的硬盘驱动器的情况。请参阅:“ Magento会话存储:选择哪个以及为什么选择?”

当我的VPS(InMotion)更改为严格的固态硬盘时,一切都变得更快。我正在获得毫秒传输!

在我自己家里的测试服务器上,一个盒子使用HST 10k主轴速度和高速缓存负载,例如64 MB(标记为用于服务器),硬盘驱动器非常快,而另一个盒子使用的硬盘驱动器却非常慢从OEM包装盒中。

同时具有8个CPU内核和32GB RAM很有帮助。作为VPS甚至专用服务器在线提供的很多东西都是骗子!!!您需要了解详细信息或将要获得的资源,因为如果服务器实际上是共享托管服务器,则Unlimited毫无意义。并且不要让图片误导您关于他们的设施的真正含义。您可能会收到希拉里(Hillary)收到的电子邮件之类的东西,就像洗手间里的东西一样。最重要的是,他们通常想要一年或更长的合同才能获得良好的价格,并且可能需要一个月或更长的时间来优化您的设置,然后才能得知自己只是在运行缓慢的服务器上!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.