由于缺少 PHP 扩展,无法在 Synology NAS (DSM 6) 上安装 Laravel

Can't install Laravel on Synology NAS (DSM 6) due to missing PHP extension

我正在尝试在我的 Synology NAS 中使用 DSM 6 在 Web Station 上安装 Laravel。安装 composer 后,我 运行 命令 composer create-project laravel/laravel web-project 但我得到的只是这个错误.

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/framework v5.3.0 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.1 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.10 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.11 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.12 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.13 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.14 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.15 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.16 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.17 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.18 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.2 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.3 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.4 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.5 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.6 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.7 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.8 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - laravel/framework v5.3.9 requires classpreloader/classpreloader ~3.0 -> satisfiable by classpreloader/classpreloader[3.0.0].
    - classpreloader/classpreloader 3.0.0 requires nikic/php-parser ^1.0|^2.0 -> satisfiable by nikic/php-parser[v1.0.0, v1.0.1, v1.0.2, v1.1.0, v1.2.0, v1.2.1, v1.2.2, v1.3.0, v1.4.0, v1.4.1, v2.0.0, v2.0.1, v2.1.0, v2.1.1].
    - nikic/php-parser v2.1.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v2.1.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v2.0.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v2.0.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.4.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.4.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.3.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.2.2 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.2.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.2.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.1.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.0.2 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.0.1 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - nikic/php-parser v1.0.0 requires ext-tokenizer * -> the requested PHP extension tokenizer is missing from your system.
    - Installation request for laravel/framework 5.3.* -> satisfiable by laravel/framework[v5.3.0, v5.3.1, v5.3.10, v5.3.11, v5.3.12, v5.3.13, v5.3.14, v5.3.15, v5.3.16, v5.3.17, v5.3.18, v5.3.2, v5.3.3, v5.3.4, v5.3.5, v5.3.6, v5.3.7, v5.3.8, v5.3.9].

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/php.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

还检查了我的 Web Station 配置,发现缺少标记器扩展,但我看不到安装它的选项。

所以,我的问题是:如何在我的 Synology NAS 上将分词器扩展添加到 PHP? PHP 版本是 5.6.

谢谢

运行 composer self-update 然后尝试在新文件夹中创建项目。

它失败了,你可以将 laravel 版本更改为下面的版本,例如 composer create-project laravel/laravel web-project "5.2.*"

您必须使用 php56 而不是 php 命令。 示例:php56 composer.phar 创建项目 laravel/laravel theproject "5.2.*"