Я новичок в Laravel и вытащил один проект из git-репо..gitIgnore
файл содержит:
/vendor
/.idea
Homestead.json
Homestead.yaml
.env
И я вижу, что мой проект не работает.Это на самом деле серверная часть, использующая Lumen и заданный маршрут, недоступный через localhost:8080/myRouteName
, даже если он установлен
$router->group(['prefix' => 'myRouteName'], function () use ($router) {
$router->post('/', ['middleware' => 'auth', 'uses' => 'MyController@store']);
});
Так что я предполагаю, что мне понадобится папка /vendor
, так как я думаю, что это требуется для правильной работы приложения.Я переместился в каталог проекта и запустил команду: composer install
, и в итоге получил эту ошибку :
PS C:\wamp64\www\myprojectname> composer install
[Composer\Exception\NoSslException]
The openssl extension is required for SSL/TLS protection but is not available.
If you can not enable the openssl extension, you can disable this error, at your own risk, by setting the 'disable-tls' option to true.
install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--no-custom-installers] [--no-autoloader] [--no-scripts] [--no-progress] [--no-suggest] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [-a|--classmap-authoritative] [--apcu-autoloader] [--ignore-platform-reqs] [--] [<packages>]...
Затем я открыл свой каталог WAMP ине удалось найти php.ini
(php7.3.1, и это установлено в моих переменных среды пользователя Windows), так как я вижу только php-development.ini
и php-production.ini
.
Так что я закончил с командой:
composer config -g -- disable-tls true
и затем, запустив composer install
снова, я получил эти ошибки :
PS C:\wamp64\www\myprojectname> composer install
You are running Composer with SSL/TLS protection disabled.
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for illuminate/encryption v5.6.15 -> satisfiable by illuminate/encryption[v5.6.15].
- illuminate/encryption v5.6.15 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
Problem 2
- Installation request for illuminate/support v5.6.15 -> satisfiable by illuminate/support[v5.6.15].
- illuminate/support v5.6.15 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
Problem 3
- Installation request for mongodb/mongodb 1.3.1 -> satisfiable by mongodb/mongodb[1.3.1].
- mongodb/mongodb 1.3.1 requires ext-mongodb ^1.4.0 -> the requested PHP extension mongodb is missing from your system.
Problem 4
- Installation request for phpunit/phpunit 7.0.3 -> satisfiable by phpunit/phpunit[7.0.3].
- phpunit/phpunit 7.0.3 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
Problem 5
- illuminate/support v5.6.15 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
- laravel/lumen-framework v5.6.3 requires illuminate/support 5.6.* -> satisfiable by illuminate/support[v5.6.15].
- Installation request for laravel/lumen-framework v5.6.3 -> satisfiable by laravel/lumen-framework[v5.6.3].
Пытался раскомментировать (в обоих php-development.ini
и php-production.ini
) такие вещи, как:
extension=openssl
extension=mbstring
, но это не помогает с ошибками.Мой composer.json
файл выглядит следующим образом:
{
"name": "laravel/lumen",
"description": "The Laravel Lumen Framework.",
"keywords": ["framework", "laravel", "lumen"],
"license": "MIT",
"type": "project",
"require": {
"php": ">=7.1.3",
"google/apiclient": "^2.0",
"jenssegers/mongodb": "^3.4",
"laravel/lumen-framework": "5.6.*",
"league/fractal": "^0.17.0",
"vlucas/phpdotenv": "~2.2"
},
"require-dev": {
"fzaninotto/faker": "~1.4",
"phpunit/phpunit": "~7.0",
"mockery/mockery": "~1.0"
},
"autoload": {
"psr-4": {
"App\\": "app/"
}
},
"autoload-dev": {
"classmap": [
"tests/",
"database/"
]
},
"scripts": {
"post-root-package-install": [
"@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
]
},
"config": {
"preferred-install": "dist",
"sort-packages": true,
"optimize-autoloader": true
},
"minimum-stability": "dev",
"prefer-stable": true
}
Так что в принципе я не уверен, как настроить одно базовое Laravel/Lumen
приложение, извлеченное из git
репо.