logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动

内部页面缓存(Internal Page Cache)

06/10/2025, by Ivan

Drupal 8 使用了 Internal Page Cache 模块,推荐用于中小型网站。这个核心模块默认启用,用于为匿名用户缓存页面。其位置在 core/modules/page_cache

该功能通过加快网站响应速度来提升性能。匿名用户首次请求的页面会被保存,并在后续请求中重复使用;根据您的网站配置,性能提升可能非常显著。

若要加快登录用户的访问速度,请查看模块 Dynamic Page Cache(动态页面缓存)

如果网站为匿名用户提供个性化内容(例如购物车等会话相关的动态内容),则建议禁用 Internal Page Cache 模块。此模块假定所有匿名用户看到的页面完全相同。这类网站仍可使用动态页面缓存模块,或通过 JavaScript + AJAX 实现个性化功能。

配置 Internal Page Cache 模块

在「性能」页面(admin/config/development/performance),您可以设置浏览器和代理缓存页面的时间长度。除此之外,没有其他配置选项。该值会作为浏览器和代理使用的 Cache-Control 头的最大缓存时间。而 Internal Page Cache 本身会缓存页面,直到页面失效或设置了 Expires 头为止。

与 Drupal 7 的比较

  1. Drupal 7 不支持即时更新;而在 Drupal 8 中,当内容更改时,页面缓存会立即刷新。
  2. Drupal 7 每次内容更新都需要清除整个页面缓存;而 Drupal 8 使用 缓存标签(Cache Tags) 机制,仅清除与已更改内容相关的缓存页面。
  3. Drupal 7 在许多情况下会继续显示过期页面;即使是核心模块也无法完全清除页面缓存。
  4. Drupal 7 的内部页面缓存默认未启用,许多用户不知道需要手动启用它。而 Drupal 8 默认为匿名用户启用页面缓存,这得益于前面提到的缓存标签机制。在 Drupal 7 中,如果默认启用内部页面缓存,会导致错误行为(因为当时还没有缓存标签机制)。

另请参阅