Этот пост был опубликован мной более года назад. Информация, описанная ниже, уже могла потерять актуальность, но всё ещё может быть полезна.
Столкнулся с ошибкой после установки Laravel 5.3 на VPS.
Exception in random.php line 185:
There is no suitable CSPRNG installed on your system
Коротко, конфигурация сервера:
$ cat /etc/redhat-release CentOS release 6.6 (Final) $ php -v PHP 5.6.27 (cli) (built: Oct 14 2016 13:58:34) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies with XCache v3.2.0, Copyright (c) 2005-2014, by mOo with XCache Optimizer v3.2.0, Copyright (c) 2005-2014, by mOo with XCache Cacher v3.2.0, Copyright (c) 2005-2014, by mOo with XCache Coverager v3.2.0, Copyright (c) 2005-2014, by mOo $ httpd -v Server version: Apache/2.2.15 (Unix) Server built: Oct 16 2014 14:45:47
Эта ошибка Laravel решается элементарно.
Добавляем в composer.json (лежит в корне установленного фреймворка) вот такую строку:
{ "name": "laravel/laravel", "description": "The Laravel Framework.", "keywords": ["framework", "laravel"], "license": "MIT", "type": "project", "require": { "php": ">=5.6.4", "paragonie/random_compat": "1.4.*", // <== // ........
Сохраняем файл, переходим в консоль и выполняем команду:
php composer.phar update
Композер обновит все зависимости и установит последнюю версию 1.4.* пакета paragonie/random_compat.
Если эта операция не выполнится, в консоли выведется следующее сообщение:
$ php composer.phar update Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1 - laravel/framework v5.3.9 requires paragonie/random_compat ~1.4|~2.0 -> satisfiable by paragonie/random_compat[v1.4.0, v1.4.1, v1.x-dev, v2.0.0, v2.0.1, v2.0.2, v2.0.3] but these conflict with your requirements or minimum-stability.
…………………………………….и так далее
В этом случае пробуй поменять версию с 1.4 на другую из тех, что указаны в квадратных скобках.
Положительный исход выполнения операции примерно таков:
$ php composer.phar update Loading composer repositories with package information Updating dependencies (including require-dev) - Removing paragonie/random_compat (v2.0.2) - Installing paragonie/random_compat (v1.4.1) Loading from cache Package illuminate/html is abandoned, you should avoid using it. Use laravelcollective/html instead. Writing lock file Generating autoload files > IlluminateFoundationComposerScripts::postUpdate > php artisan optimize Generating optimized class loader The compiled class file has been removed.