由于配置错误或缺少OpCache设置,Cron已停止

本文提供了一个解决方案,用于解决由于缺少OpCache设置或配置错误而导致cron停止工作的问题。

受影响的产品和版本

云基础架构上的Adobe Commerce,所有支持的版本

问题

cron已停止工作。

原因

OpCache模块已更新到较新的版本,该版本引入了一个在运行时重写env.php的GraphQL插件,并且可以覆盖cron设置,这可能导致该问题。 需要更新OpCache配置以避免env.php file出现任何问题,已在ECE Tools包的版本2002.1.13中解决该问题。

解决方案

选项1:在命令行工具中运行以下命令:

bin/magento cron:run

可能会显示一条消息,显示cron已禁用。

选项2:打开app/etc/env.php文件 — 如果您看到以下内容,则表明已手动禁用cron,由于部署失败未重新启用,或者该问题与OpCache设置相关。

  'cron' =>
  array (
    'enabled' => 0,
  ),
  1. 如果已禁用cron,请运行此命令以重新启用cron: vendor/bin/ece-tools cron:enable
  2. 确保您使用的是最新版本的ECE Tools。 如果不是,请升级(或跳至项目3)。 要检查现有版本,请运行此命令:
    composer show magento/ece-tools
  3. 如果您已经使用最新版本的ECE Tools,请检查是否存在op-exclude.txt文件。 为此,请运行此命令:
    ls op-exclude.txt
    如果此文件不存在,请将https://github.com/magento/magento-cloud/blob/master/op-exclude.txt添加到存储库,然后提交更改并重新部署。
  4. 无需升级ECE Tools,您还可以在存储库中添加/修改https://github.com/magento/magento-cloud/blob/master/op-exclude.txt ,然后提交更改并重新部署。

相关阅读

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a