如何更新 php-redis 扩展(以及在 shopware 更新期间可能需要这样做的原因)

发布: (2026年2月27日 GMT+8 17:00)
5 分钟阅读
原文: Dev.to

I’m happy to translate the article for you, but I’ll need the full text of the post (the content you’d like translated). Could you please paste the article’s body here? Once I have the text, I’ll provide a Simplified‑Chinese translation while preserving the original formatting, markdown, and code blocks.

为什么在 Shopware 更新时可能需要更新 php‑redis 扩展

最新的 Shopware 6.7.7.0 版本包含了对 Symfony 7.4 LTS 的升级
发行说明)。

  • Symfony 7.3 将在 2026 年 1 月 停止主动支持
    Symfony 发行日历)。
  • Shopware 6.6 LTS 在其下一个版本中也会收到相同的 Symfony 更新。

虽然从 Symfony 7.3 → 7.4 只是一次 次要 版本升级,并未在 Symfony 本身引入破坏性更改,但 Symfony 团队在此次升级中 php‑redis 扩展的最低要求提升至 6.1

如果你仍在使用较旧的 php‑redis 版本(例如,Ubuntu 24.04 LTS 自带的 php‑redis 为 5.3),则必须先更新该扩展,才能成功升级 Shopware。

我该如何找出当前运行的 php‑redis 版本?

运行以下命令:

php --ri redis | head -1

如果输出显示版本 6.1 或更高,您即可升级 Shopware。
如果报告的是更旧的版本,则需要先更新该扩展。

注意: Symfony 现在会为较旧的 php‑redis 版本添加 Composer 冲突,因此如果扩展过时,Shopware 升级将因 Composer 错误而失败。

我现在应该更新我的 php‑redis 扩展吗?

  • 仅在 计划将 Shopware 升级到需要 Symfony 7.4(因此需要 php‑redis ≥ 6.1)的版本时才升级 php‑redis
  • 在仍使用旧版 Shopware 的生产环境中更新该扩展没有任何好处,甚至可能导致不兼容(例如,Shopware 6.5 可能无法与最新的 php‑redis 配合使用)。

简而言之,仅在 为即将到来的 Shopware 升级而需要时才进行更新。

如何在 Docker 中更新 php‑redis 扩展

  1. 将 Docker PHP 扩展安装器 添加到镜像并赋予可执行权限:

    ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
    RUN chmod +x /usr/local/bin/install-php-extensions
  2. 安装(或升级)php‑redis 扩展

    RUN install-php-extensions redis

    默认情况下会安装最新的稳定版本。

  3. 固定特定版本(如果需要特定的发布版):

    -RUN install-php-extensions redis-6.0
    +RUN install-php-extensions redis-6.3
  4. 使用官方 Shopware Docker 镜像shopware/docker),该扩展已保持最新。只需拉取最新的镜像标签。

如何在 Ubuntu 上更新 php‑redis 扩展

从默认的 Ubuntu 软件库安装

sudo apt install -y php-redis

如果软件库中的版本太旧(例如 Ubuntu 24.04 提供 5.3),请继续下面的步骤。

ondrej/php PPA 安装(可信赖的新版 PHP 包来源)

sudo add-apt-repository ppa:ondrej/php   # 按提示回车
sudo apt update
sudo apt install -y php-redis

这将从 PPA 拉取最新可用的 php‑redis 版本。

如何在本地安装扩展(使用 PIE)

PIE 是一种现代的 PHP 扩展安装器,可从 Packagist 获取最新的包,取代了旧的 PECL 工作流。

安装 PIE

curl -fL --output /tmp/pie.phar https://github.com/php/pie/releases/latest/download/pie.phar \
  && gh attestation verify --owner php /tmp/pie.phar \
  && sudo mv /tmp/pie.phar /usr/local/bin/pie \
  && sudo chmod +x /usr/local/bin/pie

使用 PIE 安装(或升级)php‑redis 扩展

pie install redis

PIE 将自动获取该扩展的最新兼容版本。

本指南旨在为需要更新 php‑redis 扩展的 Shopware 升级提供故障排除参考。

使用 PIE 安装 php-redis 扩展

如果 PIE 已经安装,你可以通过运行以下命令来添加 php-redis 扩展:

pie install phpredis/phpredis

本地安装扩展(使用 PECL)

PECL 是 PHP 的传统扩展安装器。其设置过程比 PIE 更为繁琐,因此除非您已经配置了 PECL,否则通常不推荐使用。

如果 PECL 可用,请使用以下命令安装最新的 Redis 扩展:

pecl install redis
0 浏览
Back to Blog

相关文章

阅读更多 »

国家代码与地区差异

在 Symfony Intl 中支持科索沃:Symfony 的 Intl 组件不包括科索沃,因为其 ISO 3166‑1 代码 XK 是用户分配的代码,而非官方的…