Назад | Перейти на главную страницу

Запрошенное расширение PHP ext-mcrypt * отсутствует в вашей системе

Я обновил свой php до версии 5.4.13 и т.д., и в терминале моя версия php заявляет об этом

   PHP 5.4.12 (cli) (built: Mar 16 2013 21:46:23)

Но при запуске composer install io возникает следующая ошибка.

  The requested PHP extension ext-mcrypt * is missing from your system

В любом случае я пробовал несколько методов, чтобы заставить это работать и т.д., и ничего:

Я использовал следующее: Решение первое и Решение второе, они оба используют похожий подход, но я по-прежнему ошибаюсь.

Затем я провел информационный тест php, и это показывает, что версия 5.3.15 и это mycrypt говорит, что поддержка mcrypt включена

Итак, мой сервер использует этот php, а тот, что находится в моем терминале, использует другой, как это кажется

Любые идеи, как это исправить?

Я использую MAC Mountain Lion с Mountain Lion Sever (последний), xcode, и все операции обновлены, и я перезапустил сервер.

Получил ту же ошибку в Linux (Ubuntu 14.04)

Убедитесь, что ini существует

/etc/php5/mods-available/mcrypt.ini

Если это так, убедитесь, что у вас есть символическая ссылка на ini. Что-то вроде в каталоге /etc/php5/cli/conf.d

05-mcrypt.ini -> ../../mods-available/mcrypt.ini

Если символической ссылки нет, создайте ее. После установки php5-mcrypt extension У меня нет символической ссылки, только ini файл. Вот почему создайте символическую ссылку вручную.

Ты можешь использовать sudo php5enmod mcrypt чтобы включить мод. Он создаст для вас символическую ссылку.

Попробуйте следующее решение:

sudo apt-get install php5-mcrypt
sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available
sudo php5enmod mcrypt
sudo service apache2 restart

Удачи,

-Юлианец

У меня была такая же проблема - mcrypt показывался как установленный для CLI, но отсутствовал через командную строку. Чтобы исправить, я побежал

#php -i

чтобы найти расположение файла php.ini версии командной строки, а затем добавил

extension=mcrypt.so

После этого бег #php -m покажет вам, какие модули установлены для версии командной строки и там должен быть mcrypt. Если нет, то параметры «Решение 1» и «Решение 2» должны помочь вам создать модуль - тогда просто убедитесь, что модуль установлен (или скопирован) в каталог модуля (расширения) вашей установки php (что-то вроде /usr/lib/php/extensions/no-debug-non-zts-20100525/ или проверьте где extensions_dir значение в php.ini указывает на).

Что ж, я просто вернулся к основам и удалил Mac Server и вернулся к MAMP, это выполнило все необходимые обновления и установки, так как моя система конфликтовала с двумя отдельными установками и т. Д.