问题标签 [magento-fpc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Magento EE 1.9 的缓存:我们应该使用整页缓存(带有打孔)和/或“经典”块缓存吗?
我们正在使用 Magento EE 1.9。
为了加快客户端网站的速度,我们正在尝试微调缓存。
如您所知,Magento 带有不同的缓存技术。
在 Magento EE 中,我们可以使用全页缓存以及名为“打孔”的技术。据我了解,这个缓存使用了一些容器来确定是否应该从缓存中检索动态块 => applyWithoutApp($content) 或者是否应该使用 $this->_renderBlock() => applyWithApp 实例化和呈现动态块($内容)
为此,您必须在 cache.xml 中声明要“打孔”的块,其中包括扩展 Enterprise_PageCache_Model_Container_Abstract 的适当容器类在此容器类中,您必须实现不同的功能,如 _getIdentifier()、_getCacheId()、 _renderBlock 如您所见,Contanier 拥有自己的缓存 ID。
正如这里所解释的
http://www.magentocommerce.com/wiki/5__-_modules_and_development/block_cache_and_html_ouput 要缓存一个块,您只需通过定义 cache_lifetime、cache_tags、cache_key 直接在 bloc 的构造函数中添加数据
使用以下帖子进行编辑 http://magebase.com/magento-tutorials/adding-cache-support-to-magento-blocks/
我知道静态的“cache_key”是不够的。对于这些 cas,我们应该使用 getCacheKeyInfo 方法:
所有这一切我回到我的问题:据我所知,FPC + 打孔似乎是“缓存”的更完整解决方案。但是全页缓存(带有打孔)和“经典”块缓存有什么区别?
-> 由于我们使用的是 Magento EE 1.9,我们应该只使用 FPC + 打孔吗?
(因为在某种程度上 FPC + 打孔已经是缓存块的一种方式?)
- 这是否意味着“经典”块缓存已经过时或仅适用于 magento 社区版的用户?
-> 还是我们应该同时使用(FPC + 打孔和经典块缓存)?
- 在这种情况下,当一个块有自己的缓存键(或 getCacheKeyInfo())时,为容器设置缓存 id 有什么意义?
- 在这种情况下,这些缓存方法中的哪一种是主要的?
提前感谢您的所有回答!
php - 在多种货币之间切换时 Magento Enterprise 整页缓存 (FPC) 购物车侧边栏问题
问题:
如果您的 magento 企业商店启用了多种货币,并且您正在使用购物车侧边栏快速浏览购物车中的商品:当客户尝试在货币之间切换时,整页缓存将成为恶棍。购物车侧边栏不会根据切换的货币进行更新。
magento - Magento 1.13 FPC 缓存未失效
我们正在使用 Magento 1.13 EE、memcache 和 APC 操作码缓存。
对静态 cms 页面/静态块所做的任何文本更改都会立即反映在前端,并且在缓存管理中 FPC 将状态显示为“启用”而不是“无效”。
页面加载速度也很慢。似乎 FPC 无法正常工作。但是每次 /var/full_page_cache/ 文件夹被清除时,这些文件夹都会重新构建并增长。
如何检查内容是否真的是从 FPC 渲染的?
有人可以帮忙吗?
html - Magento - 如何使用 Lesti FPC 或其他方式优化我的主页?
我目前在我的主页上使用带有扩展名“横幅滑块”的 magento 1.7。我有 4 张幻灯片,每张约为 169KB(986 像素 x 362 像素)。
首页的加载速度比其他页面慢很多,特别是横幅滑块。我们安装了 lesti-FPC,它在页面加载方面产生了巨大的差异。我可以将我的横幅添加到 lesti-fpc 中吗?还是我被迫进一步压缩我的图像。(以 80% 的比例从 Photoshop 上的“保存到网络”选项中压缩)
请注意,我们所有的 js 和 css 都放在一个文件中,我已经研究了优化我的主页的可能方法,最终失败了
我有哪些选择来优化我的主页以提高速度和质量?
php - Magento 事件(包括 http_response_send_before)未在激活 FPC 的情况下启动观察者
我正在制作一个完整的观察者模块,以便根据用户的导航器语言更改商店视图。我的主要功能是由<controller_action_predispatch>
事件启动的。
在没有激活 FPC 的情况下一切正常。但是一旦启用了 FPC 并生成了它的缓存,Magento 就不再通过控制器(例如,不在产品视图、类别视图或主页等常规页面上)。我进行了研究,发现事件<http_response_send_before>
总是被发送,即使启用了 FPC。所以我改变了我之前的事件监听器,它在没有 FPC 的情况下也能很好地工作。
现在的问题是,当 FPC 被激活时,事件仍然被正确调度(在 Mage 函数中记录),但没有附加任何观察者。我不知道$_events
一旦启用 FPC,Magento 如何初始化 App.php 中的,但这似乎是问题的核心。我还没有在互联网上找到任何关于此的帖子,所以任何帮助将不胜感激。
PS:
- 我在 Magento EE 1.14.0.1 上工作。
- 我在相同版本的干净 Magento 上复制了相同的东西,并且“问题”也存在。
- 在我更改观察到的事件后,缓存当然完全刷新了。
- 使用自定义事件也会发生此行为。
php - Magento 企业显示错误结果以在 FPC 缓存的产品列表页面中显示动态数据
由于 FPC,Magento 在产品列表页面中显示错误的动态数据结果。如果我禁用整页缓存它的显示完美。我在产品列表页面中显示愿望清单图标时遇到问题。
请建议我如何解决该问题,我已尝试使用 magento hole-punching 解决该问题,但不幸的是它不起作用。
我在产品详细信息页面以及愿望清单图标中也面临同样的问题。如果用户在刷新该页面后单击“添加到愿望清单”按钮,由于页面缓存,它再次显示相同的按钮而不是“添加到愿望清单”。
magento - Magento 地理定位/FPC
在 Magento EE 中,我需要根据原始国家/地区、浏览器语言和 cookie 中设置的先前偏好来重定向客户。
我在使它与 FPC 一起工作时遇到了很大的问题。
我试图观察controller_action_predispatch
事件,但 FPC 以某种方式缓存了我的重定向指令并且客户没有被重定向。
然后我尝试了另一种解决方案:扩展 run() 方法,Mage_Core_Model_App
以便在 FPC 开始工作之前执行操作。
不幸的是,我不知道为什么,在这个方法中你不能访问Mage::getModel()
, Mage::helper()
, Mage::getConfig()
ecc
你能帮我吗?
谢谢
magento - Magento FPC 和 $_SESSION 对象
当您拥有取决于 SESSION 变量的内容时如何使用缓存?它是否适用于类似 Varnish 的缓存?需要FPC吗?
让我解释。我的客户可以选择他们的汽车型号(制造商、型号、年份),一旦选择,它就会存储在 SESSION 对象中。(当然,每个产品都链接到后端的汽车列表。)
问题是,在前端,有一个模块可以根据客户选择的汽车自动过滤产品。
我说的不仅仅是通过在搜索栏上输入关键字来搜索产品的用户。我也在谈论类别页面。当客户访问网站时,点击一个类别,那么这个类别中的产品列表也会被过滤掉!因此,当客户导航时,他只能看到与他的汽车兼容的产品。
因此,我未能使用 VARNISH(VARNISH 仅基于 url,并且所选 Car 不是每个 url 的一部分......)。
这就是为什么我想知道是否有任何考虑到 SESSION 变量的 Cache 概念?
谢谢, 罗德
magento2 - 启用整页缓存时特定类别的 Magento 2.1 内部服务器错误
我启用了 FPC(全页缓存)有一个类别包含子类别和 900 多个产品。它工作正常,但突然开始推送 500 内部服务器错误。我没有添加任何新产品或任何重大变化。所以现在当我禁用 FPC 时,该类别开始工作,当我重新启用 FPC 时,再次出现内部服务器错误 500。
我已经应用了几个解决方案,但没有成功。尝试完全删除缓存,重新索引,crons,检查 htaccess 也一切都很好,我曾尝试创建新类别,但是当我分配相同的块加载该类别时,同样的问题又开始了。
日志说问题出在函数 getIdentities()
有人能帮忙吗?提前致谢。