Я пытаюсь установить интервенцию / изображение. После запуска обновления для композитора я получаю это
это мой файл-композитор
{ "name": "laravel/laravel", "description": "The Laravel Framework.", "keywords": ["framework", "laravel"], "license": "MIT", "require": { "laravel/framework": "4.1.*", "intervention/image": "2.*" }, "autoload": { "classmap": [ "app/commands", "app/controllers", "app/models", "app/database/migrations", "app/database/seeds", "app/tests/TestCase.php" ] }, "scripts": { "post-install-cmd": [ "php artisan clear-compiled", "php artisan optimize" ], "post-update-cmd": [ "php artisan clear-compiled", "php artisan optimize" ], "post-create-project-cmd": [ "php artisan key:generate" ] }, "config": { "preferred-install": "dist" }, "minimum-stability": "stable"
}
Ничего общего с твоим композитором.
Вам необходимо установить & включить расширение FileInfo PHP, которое устанавливается по умолчанию, начиная с PHP 5.3.0. Версии до 5.3+ могут использовать прерванное расширение PECL .
Чтобы включить расширение FileInfo, вам нужно отредактировать php.ini и изменить одну строку.
Найдите строку:
;extension=php_fileinfo.dll
Удалите исходный комментарий:
extension=php_fileinfo.dll
Чтобы узнать, где находится ваш php.ini, вы можете запустить следующую команду с терминала:
$ php --ini
и найдите « Загруженный файл конфигурации ».
Обратите внимание : PHP CLI может загружать другой файл php.ini, чем в Интернете, поэтому не полагайтесь на путь, указанный в phpinfo()
. Выполните команду, указанную выше в терминале, чтобы узнать файл, загруженный PHP CLI.
Нам не нужно ничего делать в composer.json
Windows
Включить расширение fileinfo в php.ini
extension= php_fileinfo.dll
В Linux
1) Загрузите и разблокируйте пакет
2) Создайте расширение для компиляции
3) Настройте модуль
4) сгенерировать установочные файлы и установить их
5) Теперь расширение будет доступно в каталоге / usr / lib64 / php / modules. Теперь вам нужно добавить расширение где-нибудь в файле конфигурации php. Измените /etc/php.ini и добавьте следующее: extension = fileinfo.so 6) Сохраните файл и перезапустите веб-сервер
Чтобы проверить, что модуль fileinfo включен правильно, выполните:
поддержка fileinfo => включена
Альтернативный метод
Просто FYI, модуль также может быть установлен с помощью команды PECL, т.е.
После этого просто выполните шаги 5 и 6, упомянутые выше, чтобы включить его. Вот и все.
Если кто-то еще находится на DreamHost (например, я) или обнаруживает, что исправления php.ini не делают то, что вы хотите, вы можете попробовать другой маршрут.
Вот страница Wiki DreamHost на PHP.ini , но я также перечислим приведенные ниже шаги.
/home/your_user_name
) создайте новую папку под названием .php
(обратите внимание на /home/your_user_name
период) 5.6
. phprc
(без расширения). Если в этой папке уже есть файл phprc
, вы можете создать резервную копию, изменив имя файла на phprc.old
. phprc
чтобы включить расширение phprc
. extension = fileinfo.so
Через панель
Если у вас есть общий хостинг или вам не нравится SSH или командная строка, вы можете заставить DreamHost забрать ваши новые настройки phprc
.
Edit
рядом с доменом, над которым вы работаете. Через SSH
Если вам удобно использовать командную строку (и вы не используете общий хостинг), SSH на свой сервер и выполните следующие команды:
Для веб-серверов Apache
sudo /etc/init.d/httpd2 restart
Для веб-серверов Nginx
sudo /etc/init.d/nginx stop pkill -9 php sudo /etc/init.d/nginx start
Ваши конкретные команды могут немного отличаться, но если вам удобно с CLI, вы, вероятно, знаете свою конкретную команду.
Для людей с WAMP
Щелкните левой кнопкой мыши значок в трее -> PHP -> Расширение PHP -> php_fileinfo
Он перезапустит ваш сервер, и все будет готово.
Если это не сработает, попробуйте отредактировать php.ini внутри: C:\wamp\bin\php\php5.4.12
(последняя часть зависит от вашей версии php)
Найдите строку ;extension=php_fileinfo.dll
и удалите ;
Сохраните и перезапустите службы WAMP.