php плохо работает на ubuntu 13.10, а mcrypt отсутствует в phpmyadmin

16

Я обновил с UBUNTU 13.04 до 13.10, но я не могу работать с php-страницами или phpmyadmin. Я пробовал этот способ установить лампу на ubuntu sudo apt-get install lamp-server^ phpmyadmin и я правильно выполнил всю конфигурацию после установки. Я добавил эту строку Include /etc/phpmyadmin/apache.conf в /etc/apache2/apache2.conf , после чего перезапустил apache2

Теперь у меня есть две проблемы:

  1. в phpmyadmin в нижней части страницы отображается эта ошибка: The mcrypt extension is missing. Please check your PHP configuration Я проверил и mcrypt было в нем, но в phpmyadmin это дает мне ошибку отсутствия.

  2. Другая проблема на PHP-страницах кажется, что нет PHP, и это все html, потому что много строк PHP печатаются в текстовом поле вроде: <? echo $row['details']; ?> может ли кто-нибудь сказать мне, что мне делать?

задан Mohammad_Hosseini 19.10.2013 в 20:37
источник

8 ответов

49

Попробуйте это для своей проблемы с mcrypt:

mv -i /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/
sudo php5enmod mcrypt
sudo service apache2 restart

Это ошибка с расположением файла mcrypt.ini, я получил информацию от здесь .

У меня была такая же ошибка, я действительно сделал cp вместо mv , но решил проблему.

Если PHP не работает, если вы получаете работу phpmyadmin (даже с ошибкой mcrypt), это означает, что PHP работает (потому что phpmyadmin использует PHP). Но в вашем примере <? echo $row['details']; ?> измените <? на <?php и повторите попытку?

    
ответ дан Whatts 19.10.2013 в 22:05
источник
3

Для второй проблемы много строк PHP напечатано в текстовом поле: echo $row['details'];

Измените конфигурационный файл php.ini (для apache):

sudo nano -w /etc/php5/apache2/php.ini

и измените:

short_open_tag = Off

в

short_open_tag = On
    
ответ дан moz667 28.10.2013 в 06:06
1

Проверьте все ваши сценарии в /etc/php5/conf.d/, потому что они перестанут работать. В моем случае imap также прекратил работать.

Решил проблему с символическим трюком ссылки (как root):

ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/mcrypt.ini
php5enmod mcrypt
ln -s /etc/php5/conf.d/imap.ini /etc/php5/mods-available/imap.ini
php5enmod imap
service apache2 restart
    
ответ дан infernet 20.10.2013 в 21:38
1

(Я бы разместил это как комментарий выше, но не имел привилегий.)

То, что интуиция в использовании cp вместо mv была хорошей. Например, если вы используете рамку Laravel 4, CLI ремесленника обнаруживает mcrypt.ini в /etc/php5/mods-available/ , но сама структура, похоже, ищет ее в /etc/php5/conf.d/ . Вам нужно скопировать его в обоих местах, чтобы все работало:

cp -i /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available/
sudo php5enmod mcrypt
sudo service apache2 restart
    
ответ дан xiuyuan 13.03.2014 в 08:55
0

В терминале ( Ctrl + Alt + T )

1.open файл php.ini:

/etc/php5/apache2$sudo nano php.ini

2.replace Off to On:

short_open_tag = On

3.restart apache:

sudo service apache2 restart
    
ответ дан Din 30.12.2014 в 04:37
0

На самом деле подходящее место для файла mcrypt.ini находится в папке mods-available , а не в conf.d . Таким образом, замена и включение файла конфигурации mcrypt решает эту проблему.

    
ответ дан Navid 11.03.2014 в 17:24
-1

У меня также возникла проблема с mcrypt после установки Ubuntu 14.04. После этого ссылка должна помочь. www.php.net

  1. Откройте файл php.ini sudo gedit /etc/php5/apache2/php.ini
  2. Перезапустите apache2 sudo service apache2 restart

Надеюсь, что это поможет.

    
ответ дан Daroath 16.05.2014 в 03:21
-1

Дублированный вопрос: Отсутствует расширение Mcrypt в сервере 14.04 для mysql

Короткий ответ:

sudo apt-get install mcrypt php5-mcrypt
sudo php5enmod mcrypt
sudo service apache2 restart
    
ответ дан thucnguyen 03.09.2014 в 15:31