Вопрос Расширение Mcrypt отсутствует на сервере 14.04 для mysql


Расширение php mcrypt на ubuntu 14.04 показывает, что оно установлено правильно, но phpmyadmin говорит:

 The mcrypt extension is missing. Please check your PHP configuration.

Моя текущая конфигурация php Вот, Если вам нужна дополнительная информация, пожалуйста, свяжитесь со мной через комментарии.

$ sudo apt-get install php5-mcrypt
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    php5-mcrypt is already the newest version.
    0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

111
2018-05-05 00:03


происхождения


murat плюнул ... спасибо за вашу помощь
Принятый ответ - не лучшая практика. простейший и правильный ответ: http://askubuntu.com/a/477608/139249 также имеет наибольшее число голосов. - mike stewart
Для справки других «самый простой» ответ не сработал для меня. php5enmod mcrypt заморозили Apache. php5dismod mcrypt снова освободил его. Я пошел с принятым ответом и изменил путь для extension=.. и на этот раз php5enmod mcrypt работал. Так что да, это всеобъемлющий и должен быть принятым ответом. - Oliver Williams


ответы:


Попробуй это:

sudo updatedb 
locate mcrypt.ini

Должен показать его в / etc / php5 / mods-available

locate mcrypt.so

Измените mcrypt.ini и измените расширение, чтобы он соответствовал пути к mcrypt.so, например:

extension=/usr/lib/php5/20121212/mcrypt.so

Теперь это:

sudo php5enmod mcrypt - (optional since its already enabled during phpmyadmin setup)

Убедитесь, что здесь есть новые файлы (они должны быть автоматически созданы из проблемы выше)

ls -al /etc/php5/cli/conf.d/20-mcrypt.ini
ls -al /etc/php5/apache2/conf.d/20-mcrypt.ini

В противном случае выполните следующие действия.

Создание ссылок на символы теперь

sudo ln -s /etc/php5/mods-available/mcrypt.ini /etc/php5/cli/conf.d/20-mcrypt.ini
sudo ln -s /etc/php5/mods-available/mcrypt.ini /etc/php5/apache2/conf.d/20-mcrypt.ini

Перезапустить Apache

sudo service apache2 restart

Перезапустите php5 или php5-fpm

sudo service php5 restart

138
2018-05-05 01:10



Это не верно! Я думаю, вы имели в виду что-то вроде: sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/mcrypt.ini  И не наоборот. - wolfdawn
Выполнение просто php5enmod mcrypt работал плавно для меня. - diosney
Бег php5enmod mcrypt создадут эти символические ссылки для вас. Не нужно делать это вручную (т. Е. Вы можете пропустить ln -sкоманд). - Serrano
Бег php5enmod mcrypt является правильным способом Ubuntu / Debian. Этот ответ, хотя и будет работать, громоздкий и не лучший. - mike stewart
многие шаги выше не нужны. См. Ответ @ MURATSPLAT. - Raptor


Попробуйте просто сделать это:

sudo php5enmod mcrypt

А потом:

sudo service apache2 restart 

Я установил на свой компьютер новую версию Ubuntu 14.04 (настольная версия). Этот способ работает для включения mcrypt, который уже был установлен.


156
2018-06-06 11:04



Обратите внимание, что если вы работаете Nginx с php5-fpm - тогда php5-fpm service restart (или перезагрузить, если он окончательно исправлен) - mike stewart
Что делают эти две команды: первая строка включает модуль с именем «mcrypt», а затем перезапускает apache2 для обновления конфигурации. Вы можете видеть, что модуль включен /etc/apache2/mods-available, Наслаждайтесь жизнью LAMP :) - phi
sudo service apache2 reload достаточно, фактический перезапуск не нужен (на 14.04 в любом случае, вот что я пробовал) - Jasper


устанавливать mcrypt расширение для PHP, включить его и перезапустить Apache. Ниже приведены команды:

sudo apt-get install mcrypt php5-mcrypt
sudo php5enmod mcrypt
sudo service apache2 restart

57
2017-09-03 15:26



Просто. Отлично. Работает без проблем, по крайней мере для меня на Ubuntu 14.04.1 LTS (trusty) - Gor
Он также работает над ubuntu 14.10 - Coca Akat
Я бы порекомендовал вам не включать mcrypt в вашей первой строке. Он неявно установлен как зависимость от php5-mcrypt, но если вы явно установите его, apt-get не будет знать, чтобы удалить его, если позже вы захотите удалить ph5-mcrypt пакет. - beldaz
@beldaz существует, по крайней мере, один сервер, на котором php5-mcrypt был установлен как apt-get, но mcrypt отсутствовал, из-за чего модуль pnp не был включен, что привело к проблеме установки Joomla. поэтому включение mcrypt имеет смысл для меня. - tagMacher


php5-Mcrypt Пакет Ubuntu устанавливает файл конфигурации mcrypt.ini в /etc/php5/conf.d/ который является старым макетом директории PHP.

Текущий способ работы с модулями в PHP5 состоит в том, чтобы поместить ini-файлы в /etc/php5/mods-available каталог. Затем, чтобы включить модуль в PHP5, вам нужно создать символическую ссылку на связанные с ней ini-файлы из /etc/php5/apache2/conf.d для включения модуля, когда PHP используется под Apache или / или из /etc/php5/cli/conf.d если вы хотите, чтобы этот модуль включался при использовании PHP вне Apache, в сценариях, запущенных в командной строке или из crontab.

Также обратите внимание, что в conf.d directory, вы можете создать ссылку на ini-файл, поставив перед ним номер, чтобы модули загружались в определенном порядке. Полезно, когда вам нужно загрузить модуль в зависимости от другого.

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

 sudo service apache2 restart

6
2018-06-06 12:26





Мне нужна только установка сервера 14.04 (после установки php5-mcrypt)

sudo php5enmod mcrypt
sudo service apache2 restart

4
2017-09-23 01:33





Если проблема все еще возникает,

включите модуль, добавив: extension=mcrypt.so в

/etc/php5/cli/php.ini

а также

/etc/php5/apache2/php.ini


3
2017-07-24 13:55



Для меня добавлено расширение «extension = mcrypt.so» после установки mcrypt. Lubuntu 14.04 Trusty Thar - Clain Dsilva
Это работает и проще, чем принятый ответ ... который также будет ломаться, когда он будет обновляться. - Eric
Я следовал за каждой инструкцией здесь и в других местах, но напрасно. ubuntu 14.04.3 - PHP 5.5.9-1ubuntu4.14 - nginx / 1.8.1 - Версия сервера: 5.7.10 - MySQL - Версия клиентской базы данных: libmysql - 5.5.47 - phpMyAdmin Версия: 4.0.10deb1 .... у кого есть идея? - Jadeye


В Ubuntu 16.04 LTS, чтобы включить модуль mcrypt, с php 5.6:

sudo apt-get install mcrypt
sudo apt-get install php5.6-mcrypt
sudo phpenmod mcrypt

или с php 7.0:

sudo apt-get install mcrypt
sudo apt-get install php7.0-mcrypt
sudo phpenmod mcrypt

а потом

sudo service apache2 restart

2
2018-06-21 17:12





С PHP 7

sudo apt-get install php-mcrypt
sudo phpenmod mcrypt
sudo /etc/init.d/apache2 restart

1
2017-09-01 11:04



$ sudo phpenmod mcrypt ПРЕДУПРЕЖДЕНИЕ: Модуль mcrypt ini-файла не существует в /etc/php/7.1/mods-available - Yevgeniy Afanasyev
$ sudo /etc/init.d/apache2 restart sudo: /etc/init.d/apache2: команда не найдена - Yevgeniy Afanasyev