访问Bolt CMS中的文件文件夹会引发异常

时间:2014-09-13 21:22:53

标签: bolt-cms

我在家庭(开发)系统上建立了一个功能齐全的Bolt CMS系统网站。完成并测试所有内容后,我将网站放在生产网络服务器上,它就像一个魅力,除了一件事:访问,上传和选择文件不起作用。此外,当我尝试访问后端(http://.../bolt/files)中的文件部分时,我收到错误:

Whoops\Exception\ErrorException thrown with message "syntax error, unexpected '['"

Stacktrace:
#0  in /home/etxean/domains/etxean.net/public_html/vendor/league/flysystem/src/Filesystem.php:154

这是我检查文件权限的writeStream函数内部,这些都没问题。知道在哪里调试这个错误吗?

2 个答案:

答案 0 :(得分:2)

The file in question使用PHP 5.4。数组符号。

在5.4之前,数组总是被声明为

$foo = array(1, 2, 3);

从PHP 5.4开始,您可以使用JS(ON)/ Python样式数组表示法:

$foo = [1, 2, 3];

解决方案:如果要使用此库,则应将服务器升级到至少PHP 5.4。

理论上,您还可以修改源文件以使用PHP 5.3运行,但在可维护性方面这是一个非常糟糕的主意。

答案 1 :(得分:2)

@lxg是正确的,因为这是由PHP 5.3 / 5.4错误引起的。

为了保持与5.3的兼容性,我们使用Flysystem repo的分叉版本,但似乎你正在加载真实的版本。

我猜这可能是因为你已经将Bolt安装为作曲家包而不是下载发行版。

如果是,那么您可以将fork添加到Bolt站点根目录中的composer.json文件中。它应该是这样的:

"repositories": [{
    "type": "vcs",
        "url": "http://github.com/rossriley/flysystem"
}],

然后运行一个作曲家更新,Flysystem包将被替换为fork。