安装 Silverstripe 4.0.1 时出错
Error Installing Silverstripe 4.0.1
正在尝试全新安装 Silverstripe 4.0.1,但只能做到这一点 -
Installing SilverStripe...
I am now running through the installation steps (this should take about 30 seconds)
If you receive a fatal error, refresh this page to continue the installation
Setting up /var/www/duonsdev/public_html/index.php
Setting up /var/www/duonsdev/public_html/mysite/_config.php
Setting up /var/www/duonsdev/public_html/mysite/_config/theme.yml
Setting up /var/www/duonsdev/public_html/.env
Setting up /var/www/duonsdev/public_html/.htaccess
Building database schema...
ERROR [Emergency]: Uncaught TypeError: Return value of Symfony\Component\Filesystem\Filesystem::toIterable() must be an instance of Symfony\Component\Filesystem\iterable, array returned IN POST /install.php Line 729 in /var/www/duonsdev/public_html/vendor/symfony/filesystem/Filesystem.php Source ====== 720: } 721: 722
错误不断。我尝试刷新,但同样的错误。
如果我尝试 dev/build,那么它总是会在 -
时死掉
Index File_Versions.OwnerID: created as index ("OwnerID")
Website Error
There has been an error
The website server has not been able to respond to your request
正在尝试在本地开发机器 运行 Apache 虚拟主机上的 Ubuntu 16 上进行设置。
以前从未遇到过这个问题,并且使用 ss4.0 设置得很好。
有什么想法吗?
我运行进入同样的问题,在查看官方SilverStripe Community's slack channel后,他们提到这是因为我不是运行 PHP 7.1.
显然,他们网站上提供的官方 SilverStripe tarball 是使用 PHP 7.1 构建的,因此 Composer 添加了更新的 Symfony 依赖项。他们提到这将在较新的版本中得到修复。
因此,您可以通过两种方式解决此问题:
使用 Composer 下载 SilverStripe:
$ curl -sS https://getcomposer.org/installer | php
$ ./composer.phar create-project silverstripe/installer /var/www/duonsdev/public_html/
将您的 PHP 版本更新到 7.1。
完成任何这些步骤后,您将能够访问用于安装 SilverStripe 的 Web 向导。
注意:如果您在共享主机上,则需要在本地计算机上下载 SilverStripe(确保 PHP 版本匹配,至少在主要版本中,例如 7.0),然后上传生成到您的 public_html
目录的文件。
确保模块 php 版本的 apache 与 cli php 版本相同。
看起来错误与 php 版本有关。
我使用 composer 通过 cli 安装 silverstripe,但是 运行 在 apache 中 php 的不同版本。
所以在 cli 中 php 版本是 php 7.1
但是在 apache 中 php 版本是 php 7.0.
更改 apache php 以匹配 cli 后(因为 silverstripe 是在 cli 中使用 composer 安装的)它成功了!
正在尝试全新安装 Silverstripe 4.0.1,但只能做到这一点 -
Installing SilverStripe...
I am now running through the installation steps (this should take about 30 seconds)
If you receive a fatal error, refresh this page to continue the installation
Setting up /var/www/duonsdev/public_html/index.php
Setting up /var/www/duonsdev/public_html/mysite/_config.php
Setting up /var/www/duonsdev/public_html/mysite/_config/theme.yml
Setting up /var/www/duonsdev/public_html/.env
Setting up /var/www/duonsdev/public_html/.htaccess
Building database schema...
ERROR [Emergency]: Uncaught TypeError: Return value of Symfony\Component\Filesystem\Filesystem::toIterable() must be an instance of Symfony\Component\Filesystem\iterable, array returned IN POST /install.php Line 729 in /var/www/duonsdev/public_html/vendor/symfony/filesystem/Filesystem.php Source ====== 720: } 721: 722
错误不断。我尝试刷新,但同样的错误。
如果我尝试 dev/build,那么它总是会在 -
时死掉Index File_Versions.OwnerID: created as index ("OwnerID")
Website Error
There has been an error
The website server has not been able to respond to your request
正在尝试在本地开发机器 运行 Apache 虚拟主机上的 Ubuntu 16 上进行设置。 以前从未遇到过这个问题,并且使用 ss4.0 设置得很好。 有什么想法吗?
我运行进入同样的问题,在查看官方SilverStripe Community's slack channel后,他们提到这是因为我不是运行 PHP 7.1.
显然,他们网站上提供的官方 SilverStripe tarball 是使用 PHP 7.1 构建的,因此 Composer 添加了更新的 Symfony 依赖项。他们提到这将在较新的版本中得到修复。
因此,您可以通过两种方式解决此问题:
使用 Composer 下载 SilverStripe:
$ curl -sS https://getcomposer.org/installer | php $ ./composer.phar create-project silverstripe/installer /var/www/duonsdev/public_html/
将您的 PHP 版本更新到 7.1。
完成任何这些步骤后,您将能够访问用于安装 SilverStripe 的 Web 向导。
注意:如果您在共享主机上,则需要在本地计算机上下载 SilverStripe(确保 PHP 版本匹配,至少在主要版本中,例如 7.0),然后上传生成到您的 public_html
目录的文件。
确保模块 php 版本的 apache 与 cli php 版本相同。
看起来错误与 php 版本有关。 我使用 composer 通过 cli 安装 silverstripe,但是 运行 在 apache 中 php 的不同版本。 所以在 cli 中 php 版本是 php 7.1 但是在 apache 中 php 版本是 php 7.0.
更改 apache php 以匹配 cli 后(因为 silverstripe 是在 cli 中使用 composer 安装的)它成功了!