当前位置: 首页>>技术教程>>正文


在Ubuntu升级到13.10之后,mCrypt不存在

,

问题描述

在我将系统从Ubuntu 13.04升级到13.10之后,apache,mysql和php配置出现了几个问题。

我解决了大部分问题,但我似乎无法让mCrypt库工作。包安装好所以我不需要apt-get吧。服务器工作,一切似乎都很好,但是当我尝试用Laravel 4运行php artisan serve时,我收到一条消息,说明需要mCrypt。

我做了php --ri mcrypt,输出是Extension 'mcrypt' not present.我试过把extension=mcrypt.so放到/etc/php5/apache2/php.ini但它没有用。

有任何想法吗?

dpkg --get-selections | grep php5的输出

libapache2-mod-php5         install
php5                        install
php5-cli                    install
php5-common                 install
php5-gd                     install
php5-json                   install
php5-mcrypt                 install
php5-mysql                  install
php5-readline               install

最佳解决方案

我想我在launchpad.net找到了解决方案。

所以:

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

这对我有用。希望它对其他人也有帮助。

次佳解决方案

我有Ubuntu 14.04的这个问题,我做了以下解决它:

sudo apt-get install php5-mcrypt
sudo php5enmod mcrypt

sudo service apache2 restart

第三种解决方案

安装后我也遇到了Ubuntu 14.04的这个问题。

首先启用mcrypt

sudo gedit /etc/php5/apache2/php.ini

在任何行中添加此命令

extension=mcrypt.so

在/etc /php5中创建conf.d文件夹

sudo mkdir conf.d

在该文件夹中创建mcrypt.ini文件

sudo gedit mcrypt.ini 

然后将此命令添加到该文件

extension=mcrypt.so

然后创建一个文件链接

sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/mods-available

启用mcrypt模块

sudo php5enmod mcrypt

重启apache

sudo service apache2 restart

第四种方案

从Ubuntu 13.10到14.04:

sudo php5enmod mcrypt
sudo service apache2 restart

适合我。

第五种方案

我也遇到过Ubuntu 14.04和Nginx这个问题,但我的提示是重新启动FPM服务,所以我做了:

安装库

apt-get install php5-mcrypt

找到路径

updatedb && locate mcrypt.so

在位于/etc/php5/mods-available/mcrypt.ini中的mcrypt.ini文件中设置mcrypt.so的路径

extension=/usr/lib/php5/20121212/mcrypt.so

然后重新启动FPM服务

service php5-fpm restart

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/6817.html,未经允许,请勿转载。