我最近将一个已经存储在本地的OctoberCMS项目移到了服务器上。由于服务器运行PHP 5,我不得不将项目降级到AprilCMS版本419.在服务器上运行之后,我尝试通过builder插件访问任何已安装的插件,当我点击其中一个插件时builder插件,它输出以下错误:
"syntax error, unexpected ':', expecting ';' or '{'"
此错误发生在第154行的" vendor / doctrine / dbal / lib / Doctrine / DBAL / Driver / AbstractMySQLDriver.php"。
我的意思是我相当肯定我通过composer为CMS安装了PHP 5,但看起来该文件基于PHP 7.任何关于为什么会发生这种情况的想法?如果是因为PHP版本问题,那么我将如何解决这个问题呢?如果我看起来模糊,请道歉。我现在已经试着弄清楚了几天。
答案 0 :(得分:0)
嗯,我看到october/rain
版本为1.0.419
并且使用"doctrine/dbal": "~2.4",
,但遗憾的是它未更新为旧版本。在那个php版本更新期间。
你可以尝试安装一件事,只需删除vendors
文件夹和modules
文件夹
- 确保更改模块中的任何
core code
首先备份该文件,然后删除该文件夹。- 备份数据库。
- 还可根据需要配置文件。
醇>
删除vendors
文件夹和modules
文件夹
之后的remove your composer lock
文件
将package.json
文件替换为内置.419
现在从该目录运行composer intsall
它将根据正确的依赖关系安装所有新文件。
[当前问题可能是由于某些依赖项未更新为旧版本]
现在只需恢复所有config file
[不确定不需要,因为所有内容都不受这些过程的影响,所以只需检查是否需要]
现在使用此命令进行数据库迁移 - php artisan october:up
这应该会启动您的网站。
如果您发现任何问题,请发表评论。