【发布时间】:2012-03-26 11:04:34
【问题描述】:
有没有办法让 Magento 主页成为静态 html 页面?
在重负载情况下,Magento(即使使用 Varnish、APC、Fooman、块缓存等)可能会很慢。但是,我希望主页尽可能快。一种方法是只使用静态 HTML 页面。
这可能吗?
【问题讨论】:
有没有办法让 Magento 主页成为静态 html 页面?
在重负载情况下,Magento(即使使用 Varnish、APC、Fooman、块缓存等)可能会很慢。但是,我希望主页尽可能快。一种方法是只使用静态 HTML 页面。
这可能吗?
【问题讨论】:
如果您将 magento 安装在像 shop 这样的目录下,并且在根目录中有静态 html,那么我相信这会很容易。
另一种选择是通过.htaccess将根目录的默认页面设置为index.html,然后之后的每个请求都可以转到Magento的index.php。
我会尝试想出更多的想法。
HTH
【讨论】:
在主要的 index.php 引导捕获之前加入一个简单的 mod_rewrite 规则应该得到你想要的
RewriteEngine on
RewriteRule ^$ static-html.html [L]
【讨论】:
如果您在使用 Varnish 时主页加载时间很慢,则说明您的服务器配置错误。听起来您实际上从未真正访问过缓存。
检查您的页眉
X-Cache: HIT(xxx)
您可以使用 CURL 来检查
curl -I http://www.mydomain.com
如果多次点击页面后仍然显示
X-Cache: MISS
那么你没有正确定义你的 VCL。
出于多种原因,按照您的建议去做并不是一个好主意,而且它正在复制 Varnish应该 正在做的事情。
您对“重载”的定义是什么? 您的完整服务器规格是什么?
【讨论】:
在繁重的负载下,您可以使用整页缓存,并且不仅在首页,而且在您的所有 CMS、类别和产品页面上都可以获得此优势(静态页面服务)。当百度、谷歌、雅虎、Yandex 和您的客户同时攻击时,网站开始无法崩溃。
这是企业版和社区版与 AITOC、Extendware、Tiny Brick 等的主要区别。人。生成实现它的模块。
是的,静态首页可能是可行的,但随着您的网站获得流量,优势将是短暂的。
【讨论】:
第一种解决方案:
使用您的主页内容创建index.html
并在 .htaccess 末尾添加以下行:
DirectoryIndex index.html
但不确定它的后果。
第二个解决方案:
创建一个内容为 Layout = empty 的 CMS 页面,并将 CMS 页面分配为 Homepage from
System > Configuration > Web > Default Pages > CMS Homepage
这可能是理想的解决方案。
【讨论】:
您只是在治愈症状,而不是解决问题。您的网站运行缓慢,因为您的托管不足或未针对 Magento 进行优化。
当您的电子商务商店需要动态内容(库存水平、购物车内容、帐户会话等)时,使用静态 HTML 是不切实际的。按照你的建议去做肯定是不是解决你的问题的方法,你这样做只会产生新的问题。
定义“重负载”以及您使用什么来托管网站?
【讨论】:
如果您想使用 varnish(或任何整页缓存),您应该注意“计算机科学中只有两件困难的事情:缓存失效和命名事情”的说法。 phoenix 和 aoe_static 的模块在解决这些问题方面大有帮助,但我认为冒险破坏商店是不明智的。在继续之前,您应该阅读清漆文档并在您的商店中调试这些模块。我也想在这方面做一些工作-查看这篇文章magento open source full page cache
【讨论】: