问题描述
在我将系统从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