我按照官方指南更新了一个从TYPO3 7.6到^8的项目。最新的步骤是作曲家更新。我删除了与^8不兼容的扩展/包,并更新了用于^8的扩展/包,这些扩展/包可以到达安装工具、TYPO3管理后端和前端(有错误)。因此,我的结果是,我应该使用安装工具提供的升级向导。我完成了几个向导,没有任何问题,但随后遇到了一个漂亮的问题--首先,我试图在安装工具中运行DatabaseRowsUpdateWizard,但由于内存错误而失败了--我尝试了cli方法
php -d memory_limit=-1 vendor/bin/typo3cms upgrade:wizard DatabaseRowsUpdateWizard处理工作正常,但最后出现了以下错误:
[ Helhum\Typo3Console\Mvc\Cli\FailedSubProcessCommandException ]
#1485130941: Executing command "upgrade:subprocess" failed (exit code: "1")
thrown in file vendor/helhum/typo3-console/Classes/Install/Upgrade/UpgradeHandling.php
in line 284最初失败的命令是:
'/usr/bin/php7.2' 'vendor/bin/typo3cms' 'upgrade:subprocess' '--command' 'executeWizard' '--arguments' 'a:3:{i:0;s:24:"DatabaseRowsUpdateWizard";i:1;a:0:{}i:2;b:0;}'下面是子进程异常:
[ Sub-process exception: TYPO3\CMS\Core\Resource\Exception\InvalidPathException ]
#1320286857: File ../disclaimer_de.html is not valid (".." and "//" is not allowed in path).
thrown in file typo3/sysext/core/Classes/Resource/Driver/AbstractHierarchicalFilesystemDriver.php
in line 71我几乎迷失了方向,不知道该如何开始得到这个固定的帮助--非常感谢
发布于 2019-05-02 13:41:20
这样的问题通常来自RTE字段中的坏URL,从错误输出中可以看出:
文件../免责声明_de.html无效("..“而"//“在路径中是不允许的)
在这种情况下,您应该手动准备数据库并运行SQL语句,这些语句将替换所有受影响记录中的已损坏/过时的../前缀。一个示例查询:
UPDATE tt_content
SET bodytext = REPLACE(bodytext, 'href="../', 'href="')
WHERE bodytext LIKE '%href="../';请注意,此查询是非常 basic,可以销毁数据,因此请确保首先运行一些SELECT语句,以确保没有任何中断。还可以随时备份您的数据库。
有时,自定义或TER扩展也有RTE,例如tt_news,您可能会遇到相同的问题。要解决这个问题,您只需使用相应的表运行相同的查询即可。
https://stackoverflow.com/questions/55948484
复制相似问题