CentOS 7 Не могу установить расширение php-mbstring

я пытался установить расширение mbstring, но у меня есть следующая ошибка:

    Error: Package: php-mbstring-5.4.16-23.el7_0.3.x86_64 (updates)
        Requires: php-common(x86-64) = 5.4.16-23.el7_0.3
        Installed: php-common-5.4.38-1.el7.remi.x86_64 (@remi)
        php-common(x86-64) = 5.4.38-1.el7.remi
        Available: php-common-5.4.16-21.el7.x86_64 (base)
        php-common(x86-64) = 5.4.16-21.el7
        Available: php-common-5.4.16-23.el7_0.x86_64 (updates)
        php-common(x86-64) = 5.4.16-23.el7_0
        Available: php-common-5.4.16-23.el7_0.1.x86_64 (updates)
        php-common(x86-64) = 5.4.16-23.el7_0.1
        Available: php-common-5.4.16-23.el7_0.3.x86_64 (updates)
        php-common(x86-64) = 5.4.16-23.el7_0.3
    You could try using --skip-broken to work around the problem
    You could try running: rpm -Va --nofiles --nodigest

Что я могу сделать, чтобы решить проблему?

Спасибо за вашу помощь


person KrqcS    schedule 26.02.2015    source источник


Ответы (9)


Для тех, кто хочет знать, как это решить:

sudo yum remove php-common

Тогда ты можешь:

sudo yum install php-mbstring

Он автоматически установит зависимости (php-common)

person KrqcS    schedule 26.02.2015
comment
В linux php версии 5.6.x запустите sudo yum install php56-mbstring - person Chetabahana; 04.02.2016
comment
@hyip спасибо, я выполнил команду sudo yum install php56-mbstring и перезапустил сервер sudo service httpd restart, моя проблема решена. - person Ahmed_Ali; 07.06.2016
comment
Это может привести к полному удалению php и связанных с ним модулей. - person Dag Sondre Hansen; 22.08.2016
comment
это сломало мою настройку php в выпуске Amazon Linux AMI 2016.09. - person Peter Scott; 24.12.2016
comment
Столкнулся с той же проблемой, это решение работает просто отлично. Спасибо, ДжейкГулд. - person alhaythum; 23.11.2017
comment
Это сломало мою настройку php на Amazon EC2, но только после этого можно было установить все остальные модули (yum install php, yum install php-pecl-mailparse.x86_64) и т. д. - person Andron; 24.07.2018

Этот ответ с форума AWS Amazon:

yum -y install yum-utils
yum repolist all
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

Тогда можно установить php-mbstring, а может, я точно не знаю, но может поможет только для серверов на амазоне.

person DeamonMV    schedule 29.08.2015
comment
Спасибо. Последняя команда, то есть yum-config-manager ...., работала у меня на AWS RHEL 7. - person Leigh; 06.01.2017
comment
Да, я тоже. Благодарю вас! - person gtzinos; 25.03.2017

Выбранный ответ может привести к изменению установленной версии PHP. Если стандартный PHP CentOS не используется, yum попытается установить расширение mbstring для неправильной версии PHP.

Вы можете проверить вашу установленную версию PHP с помощью php -v:

$ php -v
PHP 5.5.36 (cli) (built: May 28 2016 12:05:32)

Затем установите правильную версию mbstring для вашей установленной версии PHP:

$ sudo yum install php55w-mbstring
person dotancohen    schedule 08.06.2016
comment
Я получаю ошибку No package php55w-mbstring available. - person Mohamed Taher Alrefaie; 24.10.2016
comment
@ M-T-A: Опубликуйте вывод cat /etc/redhat-release && php -v && yum search mbstring, и я посмотрю. - person dotancohen; 25.10.2016

Вы должны указать ту же версию, что и ваш php-common, у меня php70w-common

 sudo yum install php70w-mbstring
person ekerner    schedule 19.05.2018
comment
это была ИМЕННО моя проблема. Благодарю вас! - person Robert Saylor; 31.08.2019

Ничего из вышеперечисленного не работает для выделенного сервера godaddy CentOS 6, apache 2.4, php 5.6.

Вместо этого вы должны

Установите PHP-расширение mbstring с помощью EasyApache.

проверьте, есть ли он у вас с помощью putty или ssh

php -м | grep mbstring

[если ничего, значит отсутствует mbstring]

Теперь вам нужно перейти на страницу своего аккаунта,

клик менеджер сервера,

открываем whm-----ищем apache,

открыть «easy apache 4» (мой случай)

Теперь вам нужно настроить установленные пакеты,

by

нажмите кнопку «настроить» в верхней строке рядом с «установленным пакетом...».

поиск mbstring,

щелкните переключатель включения/выключения рядом с ним.

нажмите «Далее», «Далее», .... привилегии.. готово.

Теперь у вас должен быть mbstring

повторной проверкой на шпаклевке (ssh)

php -м | grep mbstring [должен быть виден mbstring]

или вы можете найти mbstring на странице phpinfo()

person hoogw    schedule 19.07.2018

нужно искать, какая версия mbstring вам нужна.

cat /etc/redhat-release && php -v && yum search mbstring



========================================================================= N/S matched: mbstring ==========================================================================
ea-php54-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php55-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php56-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php70-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php71-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php72-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php73-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling

теперь вы можете проверить, что вам действительно нужно, как я использую php7.1, поэтому моя команда будет

sudo yum install ea-php71-php-mbstring
person Hassan Ali Shahzad    schedule 21.06.2019
comment
У меня это работает, если вы управляете сервером, который устанавливает php с помощью cpanel, это правильный ответ - person Suhendra; 17.11.2019
comment
Спасибо за это! - person ricricucit; 11.01.2021

Ничего из вышеперечисленного не работает для выделенного сервера godaddy CentOS 6, apache 2.4, php 5.6.

Вместо этого вам следует установить PHP-расширение mbstring с проверкой EasyApache, если оно у вас уже есть, с помощью шпатлевки или ssh.

php -m | grep mbstring       [if nothing, means missing mbstring]

Теперь вам нужно перейти на страницу своего аккаунта godaddy,

1.click manager server,

2.open whm ----- search for apache,

3.open "easy apache 4"(my case)

Теперь вам нужно настроить установленные пакеты,

4.click "customize" button on top line next to "currently installed package..."

5.In the search bar write "mbstring",

6.click on/off toggle next to it.

7.click next, next, .... privision..done.

Теперь у вас должна быть mbstring, снова проверив на шпатлевке (ssh)

php -m | grep mbstring         [should see mbstring]

или вы можете найти mbstring на странице phpinfo()

Спасибо, моя проблема решена

person phe    schedule 15.02.2019

Полдня искал ответ, а затем только понял, что версия CentOS cPanel / WHM отключит YUM для обновления php. Вы должны удалить php* из списка исключений в /etc/yum.conf.

....

person Mark Khor    schedule 22.07.2015

Fedora 28 (облачная версия)

sudo yum install php56-php-mbstring
sudo yum install php70-php-mbstring
sudo yum install php71-php-mbstring
sudo yum install php72-php-mbstring
sudo yum install php73-php-mbstring

person V.Tran    schedule 25.11.2019