PHP在Ubuntu 13.10上运行不正常,phpmyadmin中缺少mcrypt

我已经从UBUNTU 13.04升级到13.10但我无法使用PHP页面或phpmyadmin。 我已经尝试过这种方式在Ubuntu sudo apt-get install lamp-server^ phpmyadmin上安装灯泡, 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 The mcrypt extension is missing. Please check your PHP configuration我已经检查并且mcrypt在其中,但是在phpmyadmin中它给了我错过的错误。

  2. 另一个问题是在PHP页面上似乎没有PHP而且它都是HTML,因为许多PHP行都打印在文本框中,如: 有人可以告诉我该怎么办?

试试你的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)。 但在你的例子中 改变再试一次?

对于第二个问题,许多PHP行都打印在文本框中,如: echo $row['details'];

编辑你的php.ini配置文件(对于apache):

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

并改变:

 short_open_tag = Off 

至:

 short_open_tag = On 

检查/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 

(我会将此作为上述评论发布,但没有特权。)

什么’直觉使用cp而不是mv是一个很好的。 例如,如果您使用的是Laravel 4框架,那么技术人员CLI将检测/etc/php5/mods-available/ mcrypt.ini ,但框架本身似乎在/etc/php5/conf.d/查找它。 您需要在两个位置都有一份副本才能使一切工作:

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

在终端( 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 

实际上, mcrypt.ini文件的正确位置是在conf.d中的mods-available目录中。 因此,替换并启用mcrypt配置文件,解决了这个问题。

安装Ubuntu 14.04后,我也遇到了mcrypt的问题。 以下链接应该有所帮助。 http://www.php.net

  1. 打开你的php.ini文件sudo gedit /etc/php5/apache2/php.ini
  2. 重启你的apache2 sudo service apache2 restart

希望这可以帮助。

重复的问题: mysql的14.04服务器中缺少Mcrypt扩展

简短回答:

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