drupal - Dropal 8:RouteSubscriber 类在 RegisterEventSubscribersPass 中不存在
问题描述
Drupal 8.2.3 站点出现严重问题,直到我的托管公司通知我“重复攻击”并通过编辑 .htaccess 暂时关闭该站点之前,一切都很好。
我试图恢复网站并更新它,但我得到的只是以下内容
本站暂时停机维护,近期将恢复上线。对于任何不便,请接受我们的歉意。
我制作了一个本地副本并尝试更新核心但没有运气,我什至创建了一个带有新数据库的新站点,但是一旦我尝试导入数据库,错误就会回来。
检查 php 错误日志后,我发现了这一点,但不幸的是,我是 Drupal 的新手,不知道如何修复它。
[22-May-2018 17:35:48 UTC] ReflectionException: Class Drupal\token\Routing\RouteSubscriber does not exist in f:\example\core\lib\Drupal\Core\DependencyInjection\Compiler\RegisterEventSubscribersPass.php on line 30 #0 f:\example\core\lib\Drupal\Core\DependencyInjection\Compiler\RegisterEventSubscribersPass.php(30): ReflectionClass->__construct('Drupal\\token\\Ro...')
#1 f:\example\vendor\symfony\dependency-injection\Compiler\Compiler.php(107): Drupal\Core\DependencyInjection\Compiler\RegisterEventSubscribersPass->process(Object(Drupal\Core\DependencyInjection\ContainerBuilder))
#2 f:\example\vendor\symfony\dependency-injection\ContainerBuilder.php(593): Symfony\Component\DependencyInjection\Compiler\Compiler->compile(Object(Drupal\Core\DependencyInjection\ContainerBuilder))
#3 f:\example\core\lib\Drupal\Core\DrupalKernel.php(1254): Symfony\Component\DependencyInjection\ContainerBuilder->compile()
#4 f:\example\core\lib\Drupal\Core\DrupalKernel.php(866): Drupal\Core\DrupalKernel->compileContainer()
#5 f:\example\core\lib\Drupal\Core\DrupalKernel.php(461): Drupal\Core\DrupalKernel->initializeContainer()
#6 f:\example\core\lib\Drupal\Core\DrupalKernel.php(651): Drupal\Core\DrupalKernel->boot()
#7 f:\example\index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#8 {main}
任何帮助表示赞赏并提前感谢
解决方案
首先,您正在运行一个不安全的 Drupal 核心版本。您应该在您的站点已包含的假设下进行操作,请参考Drupal 安全团队的本指南。
您的第一要务应该是在您的站点上获得至少版本 8.4.8 的核心。自 8.2.3 以来,核心有多个高度关键的安全更新。最重要的是:SA-CORE-2018-002和SA-CORE-2018-004。可以在这些链接中找到信息和补丁(如果需要)。
维护消息可能是您的云主机配置的内容。联系他们并询问您需要采取哪些步骤来更新您的 .htaccess 规则等。如果是 Drupal 核心维护消息,请参考用户指南中的此文档。
希望错误消息与您的网站已过时有关。如果核心更新后仍然存在,请检查您的PHP 版本兼容性。
推荐阅读
- xml - XSLT 在生成字符串值时转义的字符列表是什么?
- python - Python对变量中的值求和
- javascript - 在 ReactJS 中发布了一个字符串数组,但在 WebAPI 中得到了一个字符串
- angular - 无法对 Angular 应用程序进行 docker 化
- android - Android MutableLiveData 未反映回主要活动 UI
- python - pandas dayofyear 的日期时间等价物是多少?
- awk - 在列上垂直添加一个字符
- css - 如何控制 Material-UI 垂直标签的宽度?
- azure-ad-b2c - 如何在 Azure B2C 内置注册流程中获取正确的错误消息
- python - 无法通过在 python 中获取用户的输入从字典中的键中删除值