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
现在我有两个问题:
-
在页面底部的phpmyadmin中出现此错误:
The mcrypt extension is missing. Please check your PHP configuration
The mcrypt extension is missing. Please check your PHP configuration
我已经检查并且mcrypt
在其中,但是在phpmyadmin中它给了我错过的错误。 -
另一个问题是在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)。 但在你的例子中 echo $row['details']; ?>
echo $row['details']; ?>
echo $row['details']; ?>
改变 到
再试一次?
对于第二个问题,许多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
- 打开你的php.ini文件
sudo gedit /etc/php5/apache2/php.ini
- 重启你的apache2
sudo service apache2 restart
希望这可以帮助。
重复的问题: mysql的14.04服务器中缺少Mcrypt扩展
简短回答:
sudo apt-get install mcrypt php5-mcrypt sudo php5enmod mcrypt sudo service apache2 restart