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

Проблема с PHP 5.4.9 Mysqli

На сервере Ubuntu 12.04 у меня был установлен PHP 5.4.9 из источника:

./configure --prefix = / etc / php --with-apxs2 = / etc / apache2 / bin / apxs --with-config-file-path = / etc / php --with-config-file-scan-dir = / etc / php / conf.d --with-libxml-dir = / usr / local / libxml2 --with-xsl = / usr / local / libxslt --with-mysql --with-zlib --with-pdo -mysql --enable-calendar --with-gd --with-iconv-dir --enable-mbstring --enable-soap --enable-sockets --enable-zip --with-curl --with-openssl - -with-kerberos --with-tidy '

Затем, используя apt-get, я установил сервер mysql и phpMyAdmin. К сожалению, phpMyAdmin продолжает говорить, что mysqli и mcrypt не установлены. php -m | grep mysqli просто подтверждает это.

Итак, я попытался установить mysqli с помощью «apt-get install php5-mysqli», но только что получил сообщение, чтобы сделать это с помощью «php5-mysqlnd» или «php5-mysql». Хотя они уже установлены (согласно phpinfo ()), я пробовал - не работает. Однако в php.ini есть команда mysqli, такая как «extension = php_mysqli.dll», но нет «extension = mysqli.so». И заблокируйте [MySQLi] с некоторыми настройками без комментариев.

Поскольку это моя первая попытка собрать php из исходников, я считаю, что совершил какую-то глупую ошибку. Любая помощь приветствуется.

UPD: ПРОБЛЕМА РЕШЕНА 1. Чтобы включить расширение mcrypt (http://sourceforge.net/projects/mcrypt/files/) 1.1 скачать, распаковать, настроить, скомпилировать и установить Libmcrypt библиотека

wget http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz tar xf libmcrypt-2.5.8.tar.gz cd libmcrypt-2.5.8 ./configure make && make install

1.2 скачать, распаковать, настроить (я добавил желаемый путь: ---- prefix = / usr / local / mcrypt), скомпилировать и установить mcrypt

wget http://downloads.sourceforge.net/project/mcrypt/MCrypt/2.6.8/mcrypt-2.6.8.tar.gz tar xf lmcrypt-2.6.8.tar.gz cd lmcrypt-2.6.8 ./configure --prefix = / usr / local / mcrypt make && make install

2. для установки mysqli я следовал предложенным вариантам настройки php, взятым из http://php.net/manual/en/mysqli.installation.php

./configure --with-mysql = / usr / bin / mysql_config \ --with-mysqli = mysqlnd \ --with-pdo-mysql = mysqlnd [другие параметры]

Итак, после установки Libmcrypt, mcrypt в / usr / local / mcrypt и добавления изменений в конфигурацию php я наконец добился успеха. Окончательный конфиг выглядит так:

./configure --prefix=/etc/php --with-apxs2=/etc/apache2/bin/apxs --with-config-file-path=/etc/php --with-config-file-scan-dir=/etc/php/conf.d --with-libxml-dir=/usr/local/libxml2 --with-xsl=/usr/local/libxslt --with-mysql --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mcrypt=/usr/local/mcrypt --with-zlib --enable-calendar --with-gd --with-iconv-dir --enable-mbstring --enable-soap --enable-sockets --enable-zip --with-curl --with-openssl --with-kerberos --with-tidy --with-pcre-regex

P.S: Обратите внимание, что для запуска вам потребуется загрузить, настроить, скомпилировать и установить libxml, libxslt, prce, mcrypt, Libmcrypt

Если вам нужен PHP с поддержкой mcrypt и mysql, где параметры --with-mcrypt --with-mysqli?